DatePicker에서 날짜를 선택하고 다른
액티비티 (GetAttendance)를 시작하려고합니다.하지만 두 번 걸리며 한 번만 원합니다. . 한 번만 전화 할 수 있습니까?DatePicker에서 날짜를 선택하고 다른 활동을 시작하려면
// 코드
classes.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
try
{
showDialog(DATE_DIALOG_ID);
} catch (Exception e)
{
e.printStackTrace();
}
}
});
protected Dialog onCreateDialog(int id)
{
switch (id) {
case DATE_DIALOG_ID: // set date picker as current date
return new DatePickerDialog(this, obj,year, month,day);
}
return null;
};
DatePickerDialog.OnDateSetListener obj=new DatePickerDialog.OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth)
{
try
{ dday=dayOfMonth;
mmonth=monthOfYear;
yyear=year;
getDateString=parseDateMethod(dday,mmonth,yyear);
} catch (Exception e)
{
e.printStackTrace();
}
finally
{
pd=ProgressDialog.show(Home.this, "passing List", "Processing");
new AttendanceAthnticate().execute();
}
//Toast.makeText(Home.this,"Date is "+getDateString, Toast.LENGTH_LONG).show();
}
};
// AsynTask : 날짜가 설정 될 때 DatePickerDialog.OnDateSetListener()
가 두 번 호출처럼
private class AttendanceAthnticate extends AsyncTask<String, Void, ArrayList<SetAttendance>>
{
ArrayList<SetAttendance> listAtt;
@Override
protected ArrayList<SetAttendance> doInBackground(String... params)
{
listAtt=new AllMethods().getAttendance();
pd.cancel();
return listAtt;
}
@Override
protected void onPostExecute(ArrayList<SetAttendance> result)
{
try
{
if(result.size()>0)
{
Intent iii=new Intent(Home.this,GetAttendance.class);//It takes me two time which i want for one time
iii.putExtra("shahid", result);
startActivity(iii);
}
else
{
}
} catch (Exception e)
{
e.printStackTrace();
}
}
}
이 충돌 응용 프로그램이 있어야합니다. –
충돌 응용 프로그램에서 피하려면 어떻게해야합니까? –
이 줄 코멘트 pd.cancel(); –