btn只能在它的主要活动android上调用他的方法

时间:2014-08-10 16:28:02

标签: android button

真的很奇怪,当我在xml上创建btn并设置他的on click方法时,我只能编写主要活动上的方法(并将View v作为诅咒的参数)。 当我试图调用方法,它不是主要活动即时通讯 java.lang.IllegalStateException:无法在主活动上单击(查看)上找到方法。虽然具有按钮的xml文件不是主要活动的一个。 我试图添加监听器,但它给了我同样的问题。

   <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:onClick="btnCarClick"
        android:text="Refresh" />
编辑:我得到了那个例外,因为在程序的早期我没有以正确的方式切换活动,所以当我试图调用btnClick时,程序没有找到该方法,因为它是在另一个活动上。

1 个答案:

答案 0 :(得分:0)

您应该避免使用onClick属性来避免此类错误。

你宁愿在你的活动中这样做:

    Button button = findViewById(R.id.button1);
    button.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // do something here
        }
    });