halabella Ответов: 2

Почему OnclickListener не работает ?


public class MyActivity extends Activity {
    /**
     * Called when the activity is first created.
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btn1 = (Button)findViewById(R.id.button1);
        btn1.setOnClickListener(buttonSendOnClickListener);
    }
    Button.OnClickListener buttonSendOnClickListener
            = new Button.OnClickListener(){

        @Override
        public void onClick(View arg0) {

            switch (arg0.getId()) { //execution does not go here when I click button

                case R.id.button1:
                    setContentView(R.layout.main2);
                    //do your button 1 work here
                    break;
                case R.id.cancel:
                    setContentView(R.layout.main);
                    //do your button 1 work here
                    break;
            }
        }
    };//on click;
}

Пожалуйста помочь.

joshrduncan2012

Откуда ты знаешь, что это не сработает? Какой результат вы получаете? Не могли бы вы объяснить, откуда вы это знаете?

[no name]

Его нужно переключить на другой макет, я тестировал в режиме отладки - исполнение там вообще не идет.

2 Ответов

Рейтинг:
8

halabella

Нужно использовать атрибут android:onClick для переключения между макетами(слушатель в этом случае не работает) большое спасибо TorstenH!
Работа отличная, но ее нельзя испортить(точка останова не работает)!


Рейтинг:
16

TorstenH.

Вы должны использовать "вид.OnClickListener". Однако ссылка ложная.

http://developer.android.com/reference/android/widget/Button.html[^]