1

将主题应用于活动是否有某些原因会影响代码功能?我的印象是样式/主题只会影响外观......

我有一个底部有一个按钮的列表片段(从数据库填充),按下该按钮后,将启动一个新活动以允许您编辑或添加到列表/数据库。

Intent i = new Intent(getActivity(), Activity2.class);
startActivityForResult(i, ACTIVITY_EDIT);

这第二个活动按其应有的方式工作,并在返回到 listfragment 时,更新所述列表并且新项目出现在列表中。

这是我开始遇到问题的地方...

由于第二个活动只有一个 TextView、EditText 和两个按钮,我想我会使用对话框主题来防止它不必要地占用整个平板电脑屏幕。从清单文件中:

<activity android:name="Activity2" android:theme="@android:style/Theme.Dialog" />

就活动的外观而言,这确实实现了我一直在寻找的结果,但是在退出活动 #2 时,listfragment 中的列表不会重新生成/重新显示。数据库的添加正在完成,正如我在重新启动应用程序时看到的那样,我之前添加的项目终于出现了。

清单的上述添加是唯一的更改。

关于为什么会发生这种情况以及如何阻止它的任何想法?

4

2 回答 2

0

当您启动对话框时,您的第一个活动不会停止并重新启动,而是在您启动全屏活动时。对话活动完成后,尝试在列表适配器上调用notifyDataSetChanged 。

于 2012-01-18T17:10:35.520 回答
0

或者你可以添加代码onResume()来刷新它。当它调用对话框时,它调用onPause(),然后onResume()在对话框退出时调用。

于 2012-01-18T17:13:30.927 回答