漆黑天使复活 2016-04-27 13:28 采纳率: 44.4%
浏览 3839
已采纳

android小白问一个故障

android小白,做一个很简单的动作,第一个activity里面输入的内容传递到第二个activity的textview中去,但是报错如下
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference

第一个activity

public class MainActivity extends AppCompatActivity {
  protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
    }
 public void sendMessage3(View view){
Intent intent=new Intent(this,DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
  intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
            }

     public final static String EXTRA_MESSAGE = "com.mycompany.myfirstapp.MESSAGE";


}

第二个activity

  public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        Intent intent = getIntent();
        String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);


        TextView tv = (TextView) findViewById(R.id.textView);
        tv.setText(message);

        // Set the text view as the activity layout
        setContentView(R.layout.activity_display_message);


    }

如果我把 tv.setText(message);这句话注销掉,不赋值,第二个页面就能正常打开。

android刚上手小白。。自己研究了半天没研究出什么原因,求大神解答,非常感谢

  • 写回答

14条回答

  • 夜幕色倾城 2016-04-27 15:16
    关注

    setContentView(R.layout.activity_display_message);放在第三行,其他下移

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(13条)

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?