我对Android有点陌生,此刻我在我的ShoplistActivity上调用条形码SCanner,如下所示:
Intent barcode = new Intent(ShopListActivity.this, BarcodeActivity.class);
startActivityForResult(barcode,0);
然后在我的条形码活动中,我有这样的东西:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case IntentIntegrator.REQUEST_CODE: {
if (resultCode != RESULT_CANCELED) {
IntentResult scanResult = IntentIntegrator.parseActivityResult(
requestCode, resultCode, data);
if (scanResult != null) {
try {
setContentView(R.layout.automatico);
editForEAN = (EditText) findViewById(R.id.EditEAN);
txt_EAN = scanResult.getContents();
editForEAN.setText(txt_EAN);
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(),
Toast.LENGTH_LONG).show();
}
}
}
}
break;
}
}
现在我的问题是,我想用线程实现一种关闭条形码扫描仪的方法,如果它在 5 秒内没有使用,尝试使用 Handler 但没有成功。
为什么要关闭它?Android 应用不需要关闭。如果用户启动了你的应用,然后转到了其他地方,你不在乎。您确实需要保存状态,并准备好在用户返回时重新激活。
从本质上讲,Android UX是"没有退出按钮"。你的应用一直运行,直到系统将其丢弃,以便为其他内容腾出空间。唯一的例外是正在进行的任务,例如音频播放和后台服务。在这些情况下,应为用户提供停止播放或卸载服务的方法,但无需停止整个应用。