Android笔记:实现加载的progressDialog之后跳转到程序主界面 http://blog.csdn.net/mars2639/article/details/6615424
反正是能转了
progressDialog = ProgressDialog.show(this, getString(R.string.app_name),getString(R.string.tv_dialog_context2),true); //barcode_handler.sendEmptyMessage(0); //runOnUiThread(barcode_runnable); //showDialog(DIALOG1_KEY); new Thread(){ @Override public void run(){ /*startActivity(new Intent(ChooseProductActivity.this,CaptureActivity.class)); overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out);*/ //barcode_handler.sendEmptyMessage(0); /*Message msg_listData = new Message(); msg_listData.what = MESSAGETYPE_01; barcode_handler.sendMessage(msg_listData);*/ try { sleep(2000);//关键 //Intent mIntent = new Intent(); //mIntent.setClass(ChooseProductActivity.this,CaptureActivity.class); //startActivity(mIntent); //overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out); } catch (Exception e) { e.printStackTrace(); } finally { barcode_handler.sendEmptyMessage(0); } } }.start();
Handler:
private Handler barcode_handler = new Handler(){ @Override public void handleMessage(Message msg){ startActivity(new Intent(ChooseProductActivity.this,CaptureActivity.class)); overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out); progressDialog.dismiss(); //关闭进度条 } };
按照网上的说法,应该新启Thread。。。。可是启了都不行。。。还是不转
似乎是Activity跳转影响的...按理说应该把耗时的操作放在Thread中,但是发现放在Thread和放在Handler似乎没有什么区别(至少再本例中没有什么区别)。。。貌似在于sleep后,就可以转了。。。其实还是个假转。
好了可以交差了,记录备忘。