Android: два списка в двух списках не работали - PullRequest
0 голосов
/ 19 апреля 2010

Полагаю, мой предыдущий вопрос был недостаточно ясным ( Android: не удалось установитьContentView при переключении на ListActivity ), поэтому я объясню следующее.

В моем приложении у меня есть две учетные записи, которые используют два разных списка:

public class Activity1 extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
    try{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.listview1); 
}
public class Activity2 extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
    try{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.listview2); 
}

}

В соответствии с требованиями Android, listview должен иметь идентификатор, который в точности равен «@android: id / list». Если я установлю просмотр списка в listview1 и listview2 с одним и тем же идентификатором, то они в конечном итоге будут использовать один и тот же формат просмотра списка, а это не то, что мне нужно. Но если я установлю один из идентификаторов, например, «@ + id / listview2», android выдаст мне ошибку: java.lang.RuntimeException: ваш контент должен иметь ListView, атрибут id которого равен «android.R.id.list»

Как мне справиться с этой дилеммой?

Кстати: мой список просмотра довольно сложный, привычный список с иконками изображений и текстом, поэтому в своем коде я также расширил ListAdapter:

this.mListAdapter = new myListAdapter(this, 
            R.layout.listview1, mTiebaInfo);
     setListAdapter(this.mListAdapter);

1 Ответ

1 голос
/ 19 апреля 2010

Не используйте ListActivities. Используйте Деятельности и имейте ListView в каждом xml, который вы можете назвать как хотите.

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