从MainActivity
切换到Android的Settings
活动。
我在Settings
活动的前面添加了透明活动。
问题是,只有在调用透明活动finish()
时,Settings
活动才会加载。
如果透明活动在前面,我如何获得Settings
活动加载?
我目前正在这样做的方式:
void startSettingsActivity(Context context) {
Intent settingsIntent = new Intent (context,
Settings.ACTION_USAGE_ACCESS_SETTINGS);
context.startActivity(settingsIntent );
Intent transparentIntent = new Intent(context, MyTransparentActivity.class);
context.startActivity(transparentIntent);
}
我认为问题在于我对两个活动使用相同的上下文。 但是,我无法找到另一种方法来解决这个问题。
保持Settings
活动加载的最佳方式是什么,而透明的活动已经在前面?
答案 0 :(得分:0)
使用线程,特别是使用 AsyncTask ,将有助于完成此任务
答案 1 :(得分:0)
如果这是您控制的代码,您可以启动第一个活动,然后在其自身上启动透明活动。
但是,由于设置活动不在您的控制之下,请尝试startActivities(Intent[])
。它的行为好像你调用了startActivity(intent[0])
,后来调用了startActivity(intent[1])
,依此类推。
Intent settingsIntent = new Intent(context, Settings.ACTION_USAGE_ACCESS_SETTINGS);
Intent transparentIntent = new Intent(context, MyTransparentActivity.class);
context.startActivities(new Intent[] {settingsIntent, transparentIntent});