选择tabLayout中的活动时如何“执行”onCreate方法?

时间:2013-08-08 18:15:00

标签: java android eclipse android-listview oncreate

我在标签布局中有两项活动。在第一个活动中,我将元素添加到listview,在第二个活动中,将显示列表视图。所以问题是,在我完成第一个活动中向listview添加元素之后,在重新启动整个应用程序之前,无法在第二个活动上看到listview。

我猜这是因为我在onCreate方法中创建了listview,而onCreate方法只在活动被完全销毁并重新创建时执行。但由于这是一个tabLayout,因此onCreate在我开始向listView添加元素之前就已经执行了。

所以我的问题是:每次点击tabLayout时,如何让活动执行onCreate?或者可能有另一种方法,将listView放在onCreate之外并使其刷新或者什么?

这是onCreate中的代码,如果它有帮助:

listView = (ListView) findViewById (R.id.mainListView);
listAdapter = new ArrayAdapter<String>(this, R.layout.simplerow, recordedFilesArray);
listView.setEmptyView(findViewById(R.id.emptyListView));
listView.setAdapter(listAdapter);

一切都很完美,除了我需要重新启动应用以便列表视图更新。

1 个答案:

答案 0 :(得分:0)

现在有人给了我一个更好的解决方案(查看评论),但我仍然会回答我自己的问题。我做了一些研究并找到了一些东西。

这很简单。为标签创建意图时,您只需要添加FLAG_ACTIVITY_CLEAR_TOP即可。

像这样:

Intent libraryIntent = new Intent(this, RecordedLibrary.class);
libraryIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);