【发布时间】:2014-01-21 20:09:21
【问题描述】:
在 Android 上,我正在尝试设计一个活动,引导用户完成一些系统设置更改。我知道如何检测设置是否启用,我会将该检查放入后台线程中的循环中,它会正确检测用户何时进行更改。我希望我的活动在更改发生时自动弹回前台。我在那里有一个 startActivity 调用,但它不起作用。
final Thread mSettingCheck = new Thread() {
@Override
public void run() {
try {
for (int i = 0; i < 600; i++) {
if (WizardUtils.isSettingChecked()) {
Handler handler = new Handler(Looper.getMainLooper());
handler.post(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(getApplicationContext(), WizardActivity.class);
startActivity(intent);
}
});
Log.i("tag", "yay!");
break;
}
sleep(500);
}
} catch (Exception e) {
e.printStackTrace();
}
}
};
我得到日志输出行说“耶”,所以我知道它正在检测,但我没有看到活动启动到前台。有谁知道我做错了什么?
【问题讨论】:
-
我不明白,你正在尝试从
WizardActivity运行WizardActivity?new Intent(WizardActivity.this, WizardActivity.class);对吗? -
我希望用户在 WizardActivity 上启动,它会有一些指示去系统设置以选中一个框。在后台线程中,我希望我的活动轮询设置更改,当检查设置时,我想将用户带回 WizardActivity 以继续下一步。
-
我把它改成了 Intent(getApplicationContext(), WizardActivity.class) 让它更清晰。
-
您想将用户从“系统设置”带到您的活动中吗?
-
是的。我想将用户从系统设置带到我的活动
标签: android background android-activity