【问题标题】:OnClickListner crashes the programOnClickListener 使程序崩溃
【发布时间】:2015-04-14 05:17:01
【问题描述】:

我正在尝试从EditText 获取文本并将其添加到ListView 点击Button。但是onclicklistner 停止了我的申请。 这是我的代码。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_chat);
    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new ChatFragment())
                .commit();
    }
    mListView=(ListView) findViewById(R.id.list);
    mAdd = (Button) findViewById(R.id.btn_send);
    mAdd.setOnClickListener(new View.OnClickListener() {//*
        @Override
        public void onClick(View view) {
            mValue = (EditText) findViewById(R.id.ip_msg);
            data.add(mValue.getText().toString());
        }
    });
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
            this,R.layout.list_item_available,R.id.listview_availabe_textview,data );
    mListView.setAdapter(arrayAdapter);
}

* - 调试器在此处停止。

日志说

 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
        at albz.apostle.ChatActivity.onCreate(ChatActivity.java:48)

谢谢

【问题讨论】:

  • 你确定你的activity_chat.xml中有btn_send吗?
  • 你初始化数据了吗? data = new ArrayList&lt;String&gt;;
  • 请发布您的布局。我的猜测是您的布局中没有 ID 为 btn_send 的按钮。
  • 抱歉给我带来了麻烦,这是我的一个简单的误解,我使用了错误的按钮,谢谢 M D。
  • 对不起每一个人,我的不好

标签: android android-fragments android-studio


【解决方案1】:

如果视图(按钮)存在于片段布局中,则在片段中定义点击监听器。

【讨论】:

    猜你喜欢
    • 2012-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多