Настройка адаптера в моем списке просмотра - PullRequest
1 голос
/ 03 июля 2010

Я пытаюсь, чтобы мой listView, как определено в main.xml, отображал список моих объектов.Это работало нормально, когда моя деятельность распространялась на ListActivity и использовала getListView ().Теперь я расширяю обычную активность и хочу подключить свой настраиваемый адаптер к моему R.id.list следующим образом:

   ListView lv = (ListView) findViewById(R.id.list);
   lv.setTextFilterEnabled(true);
   lv.setAdapter(new MyCustomAdapter(this, R.layout.custom_list, nameResults));

, где custom_list - это xml-файл, определяющий строку.Мой отладчик сходит с ума, как только попадает в часть setAdapter, направляясь в странные файлы и, наконец, возвращает исключение NullPointerException.

Мой пользовательский адаптер, кстати:

 public class MyCustomAdapter extends ArrayAdapter<String> {
  private String[] nameResults;
  public MyCustomAdapter(Context context, int textViewResourceId, String[] names) {
   super(context, textViewResourceId, names);
   nameResults = names;
  }

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
   LayoutInflater inflater=getLayoutInflater();
   View row=inflater.inflate(R.layout.custom_list, parent, false);
   TextView label=(TextView)row.findViewById(R.id.Name);
   label.setText(nameResults[position]);
   TextView descr=(TextView)row.findViewById(R.id.Description);
   descr.setText(linkedResults.get(nameResults[position]));

   return row;
  }
 }

Любым способом, которым я могу получить его обратноза работой?Я только изменил его, так что я мог получить несколько кнопок над ним для структуры предыдущей / следующей страницы, иначе мне нужно setContentView (R.layout.main);(верно?: P. Я использовал эту ссылку для построения списка: Пользовательский список с адаптером .

Stacktrace:

07-03 12:18:02.936: ERROR/AndroidRuntime(2747): Uncaught handler: thread main exiting due to uncaught exception
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): java.lang.NullPointerException
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at com.rvthof.ShowPage.buildPage(ShowPage.java:102)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at com.rvthof.ShowPage.access$0(ShowPage.java:78)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at com.rvthof.ShowPage$1.run(ShowPage.java:74)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at android.os.Handler.handleCallback(Handler.java:587)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at android.os.Handler.dispatchMessage(Handler.java:92)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at android.os.Looper.loop(Looper.java:123)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at android.app.ActivityThread.main(ActivityThread.java:4363)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at java.lang.reflect.Method.invokeNative(Native Method)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at java.lang.reflect.Method.invoke(Method.java:521)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747):     at 

dalvik.system.NativeStart.main.(Родной метод)

1 Ответ

0 голосов
/ 03 июля 2010

Ваш пользовательский адаптер, кажется, нигде не создает экземпляр связанных результатов. Вы только что вырезали это из того, что вставили? Если нет, то это может быть проблемой.

...