這是我的Login代碼。作爲異步任務添加ProgressDialog會降低性能
public void Login_Click(View view) {
HashMap<String, String> op_Config = XMLParser
.parse(LoginActivity.this);
}
大約需要4秒才能完成執行。所以我添加了這樣的進度對話框。
public void Login_Click(View view) {
new IsLogedIn().execute();
}
class IsLogedIn extends AsyncTask<String, String, String>
{
@Override
protected void onPreExecute() {
super.onPreExecute();
showDialog(progress_bar_type);
}
@Override
protected String doInBackground(String... value) {
try
{
HashMap<String,String> op_Config = XMLParser.parse(LoginActivity.this);
finish();
Intent intent=new Intent(LoginActivity.this,MainMenuActivity.class);
startActivity(intent);
}
catch (Exception e) {
}
}
@Override
protected void onPostExecute(String file_url) {
dismissDialog(progress_bar_type);
}
}
但是現在需要超過1分鐘才能完成。
你應該將代碼從'完成()''到移動startActivity'到'onPostExecute'方法,因爲這些都應該從UI線程發生。 –
謝謝......我明白了。 – Giri