我对Android很新,此时我在我的ShoplistActivity上调用barcodeSCanner,就像这样:
Intent barcode = new Intent(ShopListActivity.this, BarcodeActivity.class);
startActivityForResult(barcode,0);
然后在我的BarcodeActivity上我有这样的事情:
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;
}
}
现在我的问题是,我希望用线程实现一种关闭BarcodeScanner的方法,如果它没有在5s中使用,尝试使用Handler而没有成功..
答案 0 :(得分:0)
为何关闭它? Android应用不需要关闭。如果用户启动您的应用程序,然后去其他地方,您不在乎。您需要保存状态,并准备在用户回来时重新激活。
从本质上讲,Android UX是“无退出按钮”。你的应用程序一直运行,直到系统抛出它为其他东西腾出空间。唯一的例外是正在进行的任务,如音频播放和后台服务。在这些情况下,您应该为用户提供停止播放或卸载服务的方法,但不需要停止整个应用程序。