Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android nullpointerException-listview_Java_Android_Listview_Nullpointerexception - Fatal编程技术网

Java Android nullpointerException-listview

Java Android nullpointerException-listview,java,android,listview,nullpointerexception,Java,Android,Listview,Nullpointerexception,我见过其他人也有同样的问题,但他们缺少setContentView()。 你知道为什么下面的方法不起作用吗?当我调用setAdapter时发生NPE,因为listView为null public class DisplayMessageActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView

我见过其他人也有同样的问题,但他们缺少setContentView()。 你知道为什么下面的方法不起作用吗?当我调用setAdapter时发生NPE,因为listView为null

public class DisplayMessageActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_display_message);
ArrayList<String> message = getArray();

ListView listView = (ListView) findViewById(R.id.listView);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, message);

listView.setAdapter(adapter);
public类DisplayMessageActivity扩展活动{
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u display\u message);
ArrayList消息=getArray();
ListView ListView=(ListView)findViewById(R.id.ListView);
ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1,消息);
setAdapter(适配器);
}); activity_main.xml

  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="horizontal"
tools:context=".MainActivity" >

  <EditText android:id="@+id/edit_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="@string/edit_message" />

 <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_send" 
    android:onClick="sendMessage" />


 <ListView android:id="@+id/listView"
          android:layout_height="match_parent"
          android:layout_width="match_parent"/>

 <TextView  
 android:id="@+id/rowTextView"   
 android:layout_width="fill_parent"   
 android:layout_height="wrap_content"  
 android:padding="10dp"  
 android:textSize="16sp" >  
</TextView>  


</LinearLayout>

调用
setContentView时,您正在引用
R.layout.activity\u display\u message
,这意味着
(ListView)findViewById(R.id.ListView);
将返回null


不要调用
setContentView(R.layout.activity\u display\u message)
调用
setContentView(R.layout.activity\u main)

是否确实应该在setContentView()中使用R.layout.activity\u display\u message,因为您的布局是activity\u main.xml