楼主: 
darkk6 (Mr. Pan)   
2018-08-01 21:06:48※ 引述《k6870 (WTF)》之铭言:
: 请高手帮忙看一下 小弟刚开始学Android 用Java写
: 结果一执行就崩溃
: 程式码如下  感谢 Orz
: public void BT(View v) {
:          EditText name2 = (EditText) findViewById(R.id.name2);
:          TextView txv = (TextView) findViewById(R.id.txv);
:          String str = name2.getText().toString().trim();
:          if (str.length() == 0)
:              txv.setText("请输入姓名");
:          else
:              txv.setText(str.length());
学习的时候知道怎么看 error log 很重要,务必要先学会怎么看 error log
Android 的话请 Google logcat
就以这边的 code 来说,可能会出错的地方很多
 public void BT(View v) {
          EditText name2 = (EditText) findViewById(R.id.name2);
          TextView txv = (TextView) findViewById(R.id.txv);
          String str = name2.getText().toString().trim();
          if (str.length() == 0)
              txv.setText("请输入姓名");
          else
              txv.setText(str.length());
}
1. 若 content view layout 中找不到 name2 , 这边会喷 NullPointer
2. 若 content view layout 中找不到 txv , 这边会喷 NullPointer
3. 同上;另外 setText 有两个 overload 这边会呼叫到的是
    setText(int resId) 这一个,要带入的是 resource id,如果找不到
    这个 resource id 的时候就会喷 Resources.NotFoundException