다음은 ListActivity의 코드입니다.목록 활동 널 포인터 예외. 에뮬레이터 시작시 강제 닫기
public class CornellRSS extends ListActivity {
private final static String rssUrl = "http://news.cornellcollege.edu/rss";
RSSParser parser;
ArrayList<Message> messages;
private ProgressDialog pd;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
messages = new ArrayList<Message>();
parser = new RSSParser(rssUrl);
loadMessages();
String[] titles = new String[messages.size()];
this.setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, titles));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
String keyword = (String) ((TextView) view).getText();
Message target = getMessage(keyword);
Bundle b = new Bundle();
b.putString(RSSHandler.TITLE, target.getTitle());
b.putString(RSSHandler.DESCRIPTION, target.getTitle());
b.putString(RSSHandler.LINK, target.getTitle());
b.putString(RSSHandler.PUB_DATE, target.getTitle());
Intent intent = new Intent(view.getContext(), RSSFeed.class);
intent.putExtras(b);
startActivity(intent);
}
});
}
null 포인터 예외가 계속 발생하여 솔루션을 찾을 수 없습니다. 어떤 도움이 필요합니까?
편집!
arraylist 메시지는 메소드로드 메시지에서 수정됩니다. 상단의 LogCat 메시지는 다음과 같습니다. "09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : java.lang.NullPointerException"
전체 오류 : 09-28 01:45 : 06.726 : ERROR/AndroidRuntime (755) : 치명적인 예외 : main 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : java.lang.NullPointerException 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.ArrayAdapter.createViewFromResource (ArrayAdapter.java:355) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.ArrayAdapter.getView (ArrayAdapter.java : 323) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.AbsListView.obtainView (AbsListView.java:1430) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime 755) : 에서 android.widget.ListView.makeAndAddView (ListView.java:1745) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.ListView.fillDown (ListView.java : 670) 09-28 01 : 45 : 06.726 : ERROR/Androi dRuntime (755) : 에서 android.widget.ListView.fillFromTop (ListView.java:727) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.ListView.layoutChildren (ListView. java : 1598) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.AbsListView.onLayout (AbsListView.java:1260) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.view.View.layout (View.java:7175) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.FrameLayout.onLayout (FrameLayout.java : 338) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.view.View.layout (View.java:7175) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime 755) : at android.widget.LinearLayout.setChildFrame (LinearLayout.java:1254) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.LinearLayout.layoutVertical (LinearLayout.java : 1130) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : at android.widget.LinearLayo ut.onLayout (LinearLayout.java:1047) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.view.View.layout (View.java:7175) 09-28 01:45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.widget.FrameLayout.onLayout (FrameLayout.java:338) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.view.View .layout (View.java:7175) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.view.ViewRoot.performTraversals (ViewRoot.java:1140) 09-28 01:45 : 06.726 : ERROR/AndroidRuntime (755) : android.view.ViewRoot.handleMessage (ViewRoot.java:1859) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : at android.os.Handler. dispatchMessage (Handler.java:99) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.os.Looper.loop (Looper.java:123) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 android.app.ActivityThread.main (ActivityThread.java:3683) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 java.lang.reflect.Method.invokeNative (네이티브 메소드) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : at java.lang.reflect.Method.invoke (Method.java:507) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:839) 09-28 01 : 45 : 06.726 : 오류/AndroidRuntime (755) : at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:597) 09-28 01 : 45 : 06.726 : ERROR/AndroidRuntime (755) : 에서 dalvik.system.NativeStart (41) 채널 : '4093eaf0 cc.rss/cc.rss.CornellRSS (server)'~ 소비자가 입력 채널을 닫았습니다. 또는 오류가 발생했습니다. 이벤트 = 0x8 09-28 01 : 45 : 08.636 : ERROR/InputDispatcher (72) : 채널 '4093eaf0 cc.rss/cc.rss.CornellRSS (서버)'채널이 로 복구 불가능하게 손상되어 삭제됩니다.
더 빨리 사용할 수 없게되어 죄송합니다.
logcat을 게시하면 더 잘 도와 드릴 수 있습니다! – Raunak
"rssUrl"이 (가) 클래스 변수 인 것으로 추측합니까? 나 또한 등의 키워드, 제목과 같은 다른 변수의 ... – blad
, 당신 제목 문자열 배열은 비어있는 ArrayList를를 초기화하는 후 크기 0 당신이 그것을 초기화 이후입니다! –
Raunak