2011-08-09 16 views
0

RSSフィードのタイトルをリストに表示するRSSリーダーがあります。タイトルをクリックするとタイトルのメインソースページが開きます... 次のコードは小さなリストでうまく動作しますが、複数のWebサイトからのフィードを含む長いリストがあるとアプリケーションが停止し、強制的に閉じる必要がありますそれ。 誰でも助けてくれたら助かります。Android RSSリーダーGUIの問題

@Override 
     protected void onListItemClick(ListView l, View v, int position, long id) { 
      super.onListItemClick(l, v, position, id); 
      Intent viewMessage = new Intent(Intent.ACTION_VIEW, 
        Uri.parse(messages.get(position).getLink().toExternalForm())); 
      this.startActivity(viewMessage); 
     } 
+0

logcatにはどのようなエラーがありますか? – Otra

+0

致命的な例外:メイン java.lang.IndexOutOfBoundsException:java.util.ArrayList.getで:無効なインデックス69は、サイズが3 java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:257) ERROR/AndroidRuntime(645)であります(ArrayList.java:311) ERROR/AndroidRuntime(645):org.example.reader.Aggregator.onListItemClick(Aggregator.java:48) android.app.ListActivity $ 2.onItemClick(ListActivity.java:321) アンドロイド.widget.AdapterView.performItemClick(AdapterView.java:284) android.widget.ListView.performItemClick(ListView.java:3382) – android

+0

行48はUri.parse(messages.get(position).getLink()。toExternalForm()です。 )))); – android

答えて

0

解析するページの数によっては、非同期タスクを開始することもできます。基本的には、UIスレッドとは別に新しいスレッドを開始し、アプリケーションを強制終了する必要はありません。また

http://developer.android.com/reference/android/os/AsyncTask.html

- あなたはあなたが解析から例外を取得行う場合は、アプリケーションを実行し続けることができるようになりますエラーチェックを実装する場合:ここでは非同期タスクについては、こちらをご覧ください。