Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 尝试在使用AsyncTask读取RSS时更新UI,但无效_Java_Android_Android Asynctask_Rss_Rss Reader - Fatal编程技术网

Java 尝试在使用AsyncTask读取RSS时更新UI,但无效

Java 尝试在使用AsyncTask读取RSS时更新UI,但无效,java,android,android-asynctask,rss,rss-reader,Java,Android,Android Asynctask,Rss,Rss Reader,我的应用程序正在向名为rssItems的ArrayList读取RSS,我试图做的是在ArrayList中添加新项时调用适配器的setDataSetChanged方法。我还使用AsyncTask从不同的线程读取RSS 为此,我将AsyncTask作为一个参数传递到RssParseHandler中,这样,每当AsyncTask对象读取完RSS项时,该处理程序就可以调用publishProgress方法。由于publishProgress是一个受保护的方法,因此我编写了一个名为publishProgr

我的应用程序正在向名为
rssItems
ArrayList
读取RSS,我试图做的是在
ArrayList
中添加新项时调用适配器的
setDataSetChanged
方法。我还使用AsyncTask从不同的线程读取RSS

为此,我将
AsyncTask
作为一个参数传递到
RssParseHandler
中,这样,每当
AsyncTask
对象读取完RSS项时,该处理程序就可以调用
publishProgress
方法。由于
publishProgress
是一个受保护的方法,因此我编写了一个名为
publishProgress
的公共包装器方法,以便处理程序可以在
AsyncTask
对象之外调用它。下面是我的一些代码:

public class MainActivity extends Activity {

private MainActivity local;
private List<RssItem> rssItems;
RssItemAdapter<RssItem> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    this.rssItems = new ArrayList<RssItem>();

    this.adapter = new RssItemAdapter<RssItem>(local,
            R.layout.rss_row_view, rssItems);

    // Get references to the Fragments
    FragmentManager fm = getFragmentManager();
    // find the fragment
    newsFragment newsFragment = (newsFragment) fm
            .findFragmentById(R.id.newsFragment);

    newsFragment.setListItems(rssItems);

    newsFragment.setListAdapter(adapter);


    GetRSSDataTask task = new GetRSSDataTask(this.rssItems, this.adapter, "blah.jpg");
    task.execute("http://somesite.net/category/news/feed/");

    Log.d("RssReader", Thread.currentThread().getName());
}
感谢您的帮助

将e.getMessage()更改为e.toString()后:

更改为e.printStackTrace()后:

将rssItems添加到RssReader后:

03-08 20:41:07.210: E/AndroidRuntime(1054): FATAL EXCEPTION: main
03-08 20:41:07.210: E/AndroidRuntime(1054): Process: com.example.bucknellian, PID: 1054
03-08 20:41:07.210: E/AndroidRuntime(1054): java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(16908298, class android.widget.ListView) with Adapter(class com.example.bucknellian.util.RssItemAdapter)]
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.ListView.layoutChildren(ListView.java:1555)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.AbsListView.onLayout(AbsListView.java:2091)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:374)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1987)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1744)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1000)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5670)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer.doCallbacks(Choreographer.java:574)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer.doFrame(Choreographer.java:544)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Handler.handleCallback(Handler.java:733)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Handler.dispatchMessage(Handler.java:95)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Looper.loop(Looper.java:136)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.app.ActivityThread.main(ActivityThread.java:5017)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at java.lang.reflect.Method.invokeNative(Native Method)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at java.lang.reflect.Method.invoke(Method.java:515)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at dalvik.system.NativeStart.main(Native Method)

我知道这是因为我试图在与UI线程不同的线程中更改UI。你知道怎么改吗

尝试将doInBackground的返回类型设置为Boolean(确保将所有“Void”更改为“Boolean”然后返回Boolean.TRUE表示成功,或返回Boolean.FALSE表示失败。我不确定这是否会修复错误,但最好从doInBackground返回一些内容。另外,请确保日志调用中没有记录空对象。

尝试此操作

使用
.printStackTrace();
查看错误消息

try {

    // Parse RSS, get items
    rssReader.getItems();

} catch (Exception e) {
    e.printStackTrace();
}
编辑:

this.rssItems=rssItems;
添加到
RssReader.class

public RssReader(String rssUrl, String icon, List<RssItem> rssItems, GetRSSDataTask task) {
    this.rssUrl = rssUrl;
    this.icon = icon;
    this.task = task;
    this.rssItems = rssItems;
}
public RssReader(字符串rssUrl、字符串图标、列表rssItems、GetRSSDataTask任务){
this.rssUrl=rssUrl;
this.icon=图标;
this.task=任务;
this.rssItems=rssItems;
}

请指出第49行@
GetRSSDataTask
@Shayanpourvatan第49行是“return null;”。返回null有什么问题吗?感谢您的帮助!第49行是什么?是登录catch吗?
46:catch(异常e){47:log.e(“RssReader”,e.getMessage());48:}49:return null;
请更改
e.getMessage()
e.toString();
和测试again@Lee7355512727检查我的编辑。只需放入
e.printStackTrace();
它就会显示错误。无需在日志中给出该错误。第44行是rssReader.getItems();@Lee7355512727
RssParseHandler.java中的行号51
51:this.rssItems.add(currentItem);52:this.task.publicPublishProgress();非常感谢!现在我遇到了另一个错误。请检查我对问题的编辑。
03-08 00:46:08.420: E/AndroidRuntime(1466): FATAL EXCEPTION: AsyncTask #1
03-08 00:46:08.420: E/AndroidRuntime(1466): Process: com.example.bucknellian, PID: 1466
03-08 00:46:08.420: E/AndroidRuntime(1466): java.lang.RuntimeException: An error occured while executing doInBackground()
03-08 00:46:08.420: E/AndroidRuntime(1466):     at android.os.AsyncTask$3.done(AsyncTask.java:300)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.FutureTask.run(FutureTask.java:242)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.lang.Thread.run(Thread.java:841)
03-08 00:46:08.420: E/AndroidRuntime(1466): Caused by: java.lang.NullPointerException: println needs a message
03-08 00:46:08.420: E/AndroidRuntime(1466):     at android.util.Log.println_native(Native Method)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at android.util.Log.e(Log.java:232)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:49)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:1)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at android.os.AsyncTask$2.call(AsyncTask.java:288)
03-08 00:46:08.420: E/AndroidRuntime(1466):     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
03-08 00:46:08.420: E/AndroidRuntime(1466):     ... 4 more
03-08 00:46:11.590: I/Process(1466): Sending signal. PID: 1466 SIG: 9
03-08 01:42:24.240: W/dalvikvm(826): threadid=11: thread exiting with uncaught exception (group=0xb3a32ba8)
03-08 01:42:24.300: E/AndroidRuntime(826): FATAL EXCEPTION: AsyncTask #1
03-08 01:42:24.300: E/AndroidRuntime(826): Process: com.example.bucknellian, PID: 826
03-08 01:42:24.300: E/AndroidRuntime(826): java.lang.RuntimeException: An error occured while executing doInBackground()
03-08 01:42:24.300: E/AndroidRuntime(826):  at android.os.AsyncTask$3.done(AsyncTask.java:300)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.FutureTask.run(FutureTask.java:242)
03-08 01:42:24.300: E/AndroidRuntime(826):  at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.lang.Thread.run(Thread.java:841)
03-08 01:42:24.300: E/AndroidRuntime(826): Caused by: java.lang.NullPointerException: println needs a message
03-08 01:42:24.300: E/AndroidRuntime(826):  at android.util.Log.println_native(Native Method)
03-08 01:42:24.300: E/AndroidRuntime(826):  at android.util.Log.e(Log.java:232)
03-08 01:42:24.300: E/AndroidRuntime(826):  at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:47)
03-08 01:42:24.300: E/AndroidRuntime(826):  at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:1)
03-08 01:42:24.300: E/AndroidRuntime(826):  at android.os.AsyncTask$2.call(AsyncTask.java:288)
03-08 01:42:24.300: E/AndroidRuntime(826):  at java.util.concurrent.FutureTask.run(FutureTask.java:237)
03-08 01:42:24.300: E/AndroidRuntime(826):  ... 4 more
03-08 01:42:36.100: D/dalvikvm(947): GC_FOR_ALLOC freed 70K, 5% free 3064K/3212K, paused 31ms, total 34ms
03-08 01:42:36.120: I/dalvikvm-heap(947): Grow heap (frag case) to 3.670MB for 635812-byte allocation
03-08 01:42:36.150: D/dalvikvm(947): GC_FOR_ALLOC freed 4K, 5% free 3680K/3836K, paused 28ms, total 28ms
03-08 01:42:36.230: D/RssReader(947): main
03-08 01:42:36.410: I/Choreographer(947): Skipped 32 frames!  The application may be doing too much work on its main thread.
03-08 01:42:36.470: D/gralloc_goldfish(947): Emulator without GPU emulation detected.
03-08 01:42:36.490: D/RssReader(947): AsyncTask #1
03-08 01:42:37.470: I/Choreographer(947): Skipped 36 frames!  The application may be doing too much work on its main thread.
03-08 01:42:40.100: E/RssReader(947): java.lang.NullPointerException
03-08 01:52:31.850: W/System.err(1201): java.lang.NullPointerException
03-08 01:52:31.850: W/System.err(1201):     at com.example.bucknellian.util.RssParseHandler.endElement(RssParseHandler.java:51)
03-08 01:52:31.850: W/System.err(1201):     at org.apache.harmony.xml.ExpatParser.endElement(ExpatParser.java:156)
03-08 01:52:31.860: W/System.err(1201):     at org.apache.harmony.xml.ExpatParser.appendBytes(Native Method)
03-08 01:52:31.860: W/System.err(1201):     at org.apache.harmony.xml.ExpatParser.parseFragment(ExpatParser.java:513)
03-08 01:52:31.860: W/System.err(1201):     at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:474)
03-08 01:52:31.860: W/System.err(1201):     at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:316)
03-08 01:52:31.860: W/System.err(1201):     at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:294)
03-08 01:52:31.860: W/System.err(1201):     at javax.xml.parsers.SAXParser.parse(SAXParser.java:390)
03-08 01:52:31.860: W/System.err(1201):     at javax.xml.parsers.SAXParser.parse(SAXParser.java:266)
03-08 01:52:31.860: W/System.err(1201):     at com.example.bucknellian.util.RssReader.getItems(RssReader.java:30)
03-08 01:52:31.860: W/System.err(1201):     at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:44)
03-08 01:52:31.860: W/System.err(1201):     at com.example.bucknellian.util.GetRSSDataTask.doInBackground(GetRSSDataTask.java:1)
03-08 01:52:31.860: W/System.err(1201):     at android.os.AsyncTask$2.call(AsyncTask.java:288)
03-08 01:52:31.860: W/System.err(1201):     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
03-08 01:52:31.860: W/System.err(1201):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
03-08 01:52:31.860: W/System.err(1201):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
03-08 01:52:31.860: W/System.err(1201):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
03-08 01:52:31.860: W/System.err(1201):     at java.lang.Thread.run(Thread.java:841)
03-08 20:41:07.210: E/AndroidRuntime(1054): FATAL EXCEPTION: main
03-08 20:41:07.210: E/AndroidRuntime(1054): Process: com.example.bucknellian, PID: 1054
03-08 20:41:07.210: E/AndroidRuntime(1054): java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(16908298, class android.widget.ListView) with Adapter(class com.example.bucknellian.util.RssItemAdapter)]
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.ListView.layoutChildren(ListView.java:1555)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.AbsListView.onLayout(AbsListView.java:2091)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:374)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.widget.FrameLayout.onLayout(FrameLayout.java:388)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.View.layout(View.java:14817)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewGroup.layout(ViewGroup.java:4631)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1987)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1744)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1000)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5670)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer.doCallbacks(Choreographer.java:574)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer.doFrame(Choreographer.java:544)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Handler.handleCallback(Handler.java:733)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Handler.dispatchMessage(Handler.java:95)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.os.Looper.loop(Looper.java:136)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at android.app.ActivityThread.main(ActivityThread.java:5017)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at java.lang.reflect.Method.invokeNative(Native Method)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at java.lang.reflect.Method.invoke(Method.java:515)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
03-08 20:41:07.210: E/AndroidRuntime(1054):     at dalvik.system.NativeStart.main(Native Method)
try {

    // Parse RSS, get items
    rssReader.getItems();

} catch (Exception e) {
    e.printStackTrace();
}
public RssReader(String rssUrl, String icon, List<RssItem> rssItems, GetRSSDataTask task) {
    this.rssUrl = rssUrl;
    this.icon = icon;
    this.task = task;
    this.rssItems = rssItems;
}