Java Android. Много кнопок (50-60) выполняют одну функцию, как не писать в каждой в OnClick функцию?

Как применить одну функцию по нажатию на все эти кнопки?

А что мешает это сделать? Что мешает с OnClick указать одну функцию?

Import android.view.View.OnClickListener;

public class ButtonDemoActivity extends Activity implements OnClickListener…

final Button button1 = (Button)findViewById(R.id.button1);
final Button button2 = (Button)findViewById(R.id.button2);
final Button button3 = (Button)findViewById(R.id.button3);

// устанавливаем один обработчик для всех кнопок
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);

// анализируем, какая кнопка была нажата. Всего один метод для всех кнопок
@Override
public void onClick(View v){
switch (v.getId(. {
case R.id.button1: editText.setText("Нажата кнопка Button1"); break;
case R.id.button2: editText.setText("Нажата кнопка Button2"); break;
case R.id.button3: editText.setText("Нажата кнопка Button3"); break;
}
}

Создать один слушатель и использовать для каждой кнопки, в слушателе определять какая нажата, какие проблемы?

Добавить комментарий