Привет, я новичок в программировании Android, я пытаюсь запустить метод нажатия для всех кнопок в моем макете. Я написал следующий код:
public class SudokuActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setAllOnClick();
}
private void setAllOnClick(){
LayoutInflater li = getLayoutInflater();
LinearLayout ll = (LinearLayout) li.inflate(R.layout.main, null);
ArrayList<View> touchables = ll.getTouchables();
for (View v : touchables){
if (v instanceof Button){
Toast.makeText(getApplicationContext(), ((Button) v).getText() , Toast.LENGTH_SHORT).show();
v.setOnClickListener(this);
}
}
}
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), ((Button) v).getText() , Toast.LENGTH_SHORT).show();
}
}
Тост в for отлично работает - это значит, что мне удаётся получить все экземпляры моих кнопок,
но тост в методе onClick не работает, на самом деле я видел в отладчике, что он никогда не достигает метода onClick, но я не могу понять, почему?
Спасибо, и извините, если это слишком много, или я не заметил чего-то очень глупого!