为什么我的Android应用程序在Set按钮被禁用后崩溃了?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (54)

我的应用程序在我按下按钮后就崩溃了。

我的代码:

<android.support.v7.widget.AppCompatButton
    android:id="@+id/btn_print_trans"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="40dp"
    android:onClick="OnClickPrintSimpleApiTest"
    android:text="PRINT"
    android:textColor="#FFFFFF" />

以及:

public void OnClickPrintSimpleApiTest(View view) {
    final Button BTN_print = (Button) findViewById(R.id.btn_print_trans);
    BTN_print.setBackgroundColor(Color.GREEN);
    BTN_print.setEnabled(false);
}  
提问于
用户回答回答于

因为OP定义了onClick方法OnClickPrintSimpleApiTest作为XML布局文件中的一个属性。

如下所示:

android:onClick="OnClickPrintSimpleApiTest"

它们不需要获得对Button使用findViewById()

Button视图传递给OnClickPrintSimpleApiTest()方法作为参数“view”。因此,只需这样做:

public void OnClickPrintSimpleApiTest(View view) {
    Button BTN_print = (Button) view
    BTN_print.setBackgroundColor(Color.GREEN);
    BTN_print.setEnabled(false);
}

扫码关注云+社区

领取腾讯云代金券