那是我的代碼,非常簡單和基本的公共按鈕 btn1;公共文本視圖 txt1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.txt1);
findViewById(R.id.btn1);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
txt1.setText("finalyyyyyyyyyyy");
}
});
并且顯示的錯誤是:Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on an null object reference
uj5u.com熱心網友回復:
問題就在這里
findViewById(R.id.txt1);
findViewById(R.id.btn1);
您正在從.xml檔案中獲取視圖,但實際上并未將值分配給任何物件...因此,當您嘗試呼叫方法時,btn1它為空(空)并引發錯誤
因此,只需將您獲得的值分配給視圖物件,如下所示:
txt1 = findViewById(R.id.txt1);
btn1 = findViewById(R.id.btn1);
這將解決問題
uj5u.com熱心網友回復:
將元素保存在變數中并將 onClick 方法設定為該特定變數,如下所示:
btn1 = findViewById(R.id.btn1);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
txt1.setText("finalyyyyyyyyyyy");
}
});
uj5u.com熱心網友回復:
findViewById(R.id.btn1).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
findViewById(R.id.txt1).setText("finalyyyyyyyyyyy");
}
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/490474.html
上一篇:如何通過我的textView1從字串資源中獲取textview2getText等于字串名稱
下一篇:如何在macOS上生成哈希鍵?
