Как реализовать ListView с остальной частью Activity - PullRequest
0 голосов
/ 14 января 2012

Я пытаюсь включить ListView в мою основную деятельность.Мой Java-код для основного действия выглядит следующим образом: открытый класс StylbugActivity расширяет Activity {/ ** Вызывается при первом создании действия.* /

private ListView x;
public void onCreate(Bundle savedinstanceState) {
    super.onCreate(savedinstanceState);
    String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
            "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
            "Linux", "OS/2" };
    x = (ListView) findViewById(R.id.list_list_view);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, values);
    x.setAdapter(adapter);
}

, тогда как мой main.xml выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
    android:id="@+id/wow"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:clickable="true"
    android:onClick="what"
    android:text="@string/hello" />

<Button
    android:id="@+id/testButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="test1"
    android:text="Button" />

<ListView
    android:id="@+id/list_list_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />



</LinearLayout>

Однако, когда я тестирую свою программу, она просто ломается, когда я пытаюсь ее загрузить.Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 14 января 2012

если вы расширите ListActivity вместо Activity, он будет работать нормально.Поскольку вы используете setContentView (R.layout.main), то ListView x никогда не инициализируется.Я не знаю точно, что вы пытаетесь выполнить в целом, но это заставит ваш ListView работать.

public class ListExample extends ListActivity{
public void onCreate(Bundle savedinstanceState) {
    super.onCreate(savedinstanceState);
    String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
            "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
            "Linux", "OS/2" };
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, values);
    setListAdapter(adapter);
}
}

Вам придется проделать некоторую другую работу, чтобы заставить TextView и Button из вашего xml работать в этомустановить.

Вы также можете пойти по маршруту, который вы используете, но вы должны установитьContentView (R.layout.main), иначе вы продолжите получать NPE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...