简体   繁体   English

ListView导致NullPointerException

[英]ListView causes NullPointerException

This is my first Android app, i am trying to put a listview on and i have followed numerous tutorials but i always get the same result, a crash upon starting the app. 这是我的第一个Android应用程序,我正在尝试使用listview,并且我遵循了许多教程,但是我总是得到相同的结果,启动该应用程序时会崩溃。

XML XML

<RelativeLayout 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:background="@drawable/background"
android:gravity="top"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.mattigins.mediacenter.MainActivity$PlaceholderFragment" >

<View
    android:id="@+id/view1"
    android:layout_width="550dp"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/View01"
    android:background="@drawable/semi_trans_box" />

<View
    android:id="@+id/View01"
    android:layout_width="550dp"
    android:layout_height="wrap_content"
    android:layout_marginRight="58dp"
    android:layout_toLeftOf="@+id/view1"
    android:background="@drawable/semi_trans_box" />

<ListView
    android:id="@+id/List1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/View01"
    android:layout_alignParentTop="true"
    android:layout_alignRight="@+id/View01" >

</ListView>

Code

protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment()).commit();
        }

        ListView listView = (ListView) findViewById(R.id.List1);
        String[] test_items = {"1","2","3","4"};
        ArrayAdapter<String> test_adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, test_items);
        listView.setAdapter(test_adapter);

}

Looks like your ListView belongs to the Fragment layout. 看起来您的ListView属于Fragment布局。 Looking at 看着

In onCreateView of Fragment . Fragment onCreateView中。

ListView listView = (ListView) rootView.findViewById(R.id.List1);
String[] test_items = {"1","2","3","4"};
ArrayAdapter<String> test_adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, test_items);
listView.setAdapter(test_adapter);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM