我想知道如何在不启动活动的情况下通过意图从一项活动传递数据。我正在使用 TabViews,当我启动另一个 Activity 时,我失去了 TabView 和 TabIcons,因为我使用 MainActivity.tabHost.setCurrentTab(2); 在选项卡之间切换。
btnShowResult.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
result = database.getResult();
MainActivity.tabHost.setCurrentTab(2);
}
});
单击按钮时,我定义了一个全局变量 result 并用我的数据库中的值填充它。它加载我的第三个选项卡,我在其中调用 txtView.setText(SecondTab.result+"");
当我第一次单击该按钮时,这工作正常。但是更改变量结果对 txtView 没有影响,因为它没有刷新。
更改全局变量结果后如何刷新 txtView?调用 ThirdTab.txtView.invalidate(); 在 onClick-Function 中导致我的应用程序崩溃。
谢谢。
编辑:
好的。我通过将结果保存到 sharedPrefs 并在第二个选项卡中从它加载来使用 SharedPreferences 完成此操作。但是,我的 txtView 中显示的结果仍然相同并且不会改变。在 sharedPrefs 中的结果发生更改后,我在哪里以及如何告诉我的第二个 Tab 刷新 txtView?