У меня есть табуляция, имеющая несколько видов деятельности. На одной из вкладок у меня есть два действия, между которыми я хочу поместить диалог прогресса. Для этого я использую Asynk Task. Ниже мой AsynkTask класс, который я сделал внутренний класс для деятельности ABOUTUS:Asynk task android
private class TheTask extends AsyncTask<Void, Void, Void>{
@Override
protected void onPreExecute() {
progDialog = ProgressDialog.show(AboutUs.this.getParent(), "Loading... ",
"please wait....", true);
}
@Override
protected Void doInBackground(Void... params) {
final Intent aboutusIntent = new Intent(getParent(), Departments.class);
final TabGroupActivity parentActivity = (TabGroupActivity)getParent();
parentActivity.startChildActivity("Departments", aboutusIntent);
return null;
}
@Override
protected void onPostExecute(Void result) {
if(progDialog.isShowing())
{
progDialog.dismiss();
}
}
}
Я называю этот класс в моей ABOUTUS деятельности:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aboutus);
.
.
.
.
/* Button for going to Departments */
Button ourdepbtn = (Button) findViewById(R.id.departmentsbutton);
ourdepbtn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
//ourDepartments();
new TheTask().execute();
return false;
}
});
}
Однако это does'nt начать новую деятельность т.е. Отделы. Появится диалоговое окно прогресса, а затем исчезнет, но активность никогда не загружается.
Любые предложения .. ??
В моей ABOUTUS деятельности я загрузить некоторые данные, которые приходя из веб-службы. Но как вы думаете, в работе AboutUs должен быть создан диалог прогресса. Поскольку в соответствии с вами, если в дочерней активности создан диалог выполнения, и это тоже после setContentView(), тогда диалоговое окно появится после того, как макет был уложен, что, возможно, портит цель отображения диалога в фоновом режиме. – Nitish
У вас есть 2 варианта: 1) загружать данные и показывать прогресс в новой активности, 2) загружать данные и показывать прогресс в OLD-активности и передавать их в качестве дополнения к намерению (к которому можно напрямую получить доступ к новому действию) – Oliver
Got это правильно. Это код. Он отлично работает :) – Nitish