Как мне определить список для моей ListActivity? - PullRequest
1 голос
/ 16 октября 2011

У меня есть действие со списком, использующее макет, в котором есть больше, чем просто список. У этого также есть кнопка и счетчик. Я получаю сообщение об ошибке, в котором говорится, что мне нужен виджет списка с именем list.

10-15 23: 28: 36.131: ОШИБКА / AndroidRuntime (448): java.lang.RuntimeException: невозможно запустить действие ComponentInfo {rams.rss / rams.rss.RamsRSS}: java.lang.RuntimeException: Ваше содержимое должен иметь ListView с атрибутом id 'android.R.id.list'

Однако, у него уже есть объект списка с именем list. Я использовал одно решение отсюда:

Почему мое приложение для Android постоянно говорит мне, что мне нужно определить идентификатор ListView, когда он уже определен?

Это вызвало только еще одну ошибку, при которой добавляется копия с суффиксом .out.

rams_layout.xml -> rams_layout.out.xml

Вот содержимое используемого мной xml-файла:

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="match_parent"
      android:layout_height="match_parent">
        <Button android:text="Back" android:layout_width="wrap_content"         android:id="@+id/button1" android:layout_height="wrap_content"         android:layout_alignParentTop="true" android:layout_alignParentLeft="true"></Button>
        <Spinner android:id="@+id/spinner1"         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:layout_alignParentTop="true" android:layout_toRightOf="@+id/button1"         android:layout_alignParentRight="true"></Spinner>
        <ListView android:id="@android:id/list" android:layout_width="match_parent"         android:layout_height="wrap_content"         android:layout_below="@+id/spinner1" android:layout_alignParentLeft="true"         android:layout_alignParentBottom="true"></ListView>

    </RelativeLayout>

Есть идеи, как это исправить?

Ответы [ 2 ]

0 голосов
/ 16 октября 2011

Одна вещь, которую я заметил - идентификатор вашего ListView отформатирован интересным способом. Попробуйте изменить свой android: id на:

<ListView android:id="@+id/list" ...

У меня есть Activity с такой же настройкой, и вот как я ссылаюсь на ListView:

ListView list = (ListView) findViewById(R.id.list);
list.setAdapter(...
0 голосов
/ 16 октября 2011

Попробуйте очистить свой проект.В Eclipse это Project | Clean из главного меню.Из командной строки это ant clean.

Это вызвало только еще одну ошибку, при которой добавляется копия с суффиксом .out.rams_layout.xml -> rams_layout.out.xml

Скорее всего, это потому, что вы пытались запустить проект Android, имея XML-файл в качестве активной вкладки в редакторе.Я думал, что эта проблема была исправлена ​​- убедитесь, что вы используете последнюю версию плагина ADT для Eclipse.

...