내 앱을 게시했습니다. 내 장치에서 원활하게 작동합니다. 하지만 나는 놀이 콘솔에 대한 몇 가지 충돌 보고서를 얻습니다. 그러나 나는 그것을 어떻게 다룰 지 알 수 없었다. 문제가 진행률 대화 상자라는 것을 알고 있습니다. 어떻게해야합니까? 미리 감사드립니다.IllegalStateException asynctask - onPostExecute
충돌 보고서 :
java.lang.IllegalStateException:
at android.app.FragmentManagerImpl.checkStateLoss (FragmentManager.java:1328)
at android.app.FragmentManagerImpl.enqueueAction (FragmentManager.java:1346)
at android.app.BackStackRecord.commitInternal (BackStackRecord.java:729)
at android.app.BackStackRecord.commit (BackStackRecord.java:705)
at android.app.DialogFragment.dismissInternal (DialogFragment.java:292)
at android.app.DialogFragment.dismiss (DialogFragment.java:258)
at com.example.genesis.policeradiostream.TopFeedsFragment$Listeleme.onPostExecute (TopFeedsFragment.java:172)
at com.example.genesis.policeradiostream.TopFeedsFragment$Listeleme.onPostExecute (TopFeedsFragment.java:95)
at android.os.AsyncTask.finish (AsyncTask.java:636)
at android.os.AsyncTask.access$500 (AsyncTask.java:177)
at android.os.AsyncTask$InternalHandler.handleMessage (AsyncTask.java:653)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:153)
at android.app.ActivityThread.main (ActivityThread.java:5254)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:902)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:697)
그리고이 조각에서이 오류 :
공용 클래스 TopFeedsFragment이 조각을 확장은 {
public static RadiosListAdapter adapter_3;
protected View mView;
FlipProgressDialog fpd = new FlipProgressDialog();
public TopFeedsFragment() {
}
@Override
public void onPause() {
super.onPause();
fpd.dismiss();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_top_feeds, container, false);
this.mView = view;
List<Integer> imageList = new ArrayList<Integer>();
imageList.add(R.drawable.img_progress_dialog_red_4);
imageList.add(R.drawable.img_progress_dialog_blue_4);
fpd.setImageList(imageList);
fpd.setCanceledOnTouchOutside(true);
fpd.setBackgroundColor(Color.TRANSPARENT);
fpd.setImageSize(600);
fpd.setOrientation("rotationY");
fpd.setDuration(400);
new Runnable() {
@Override
public void run() {
new Listeleme().execute();
}
}.run();
return view;
}
private class Listeleme extends AsyncTask<Void,Void,Void> // LINE 95
{
String URL="...";
@Override
protected void onPreExecute()
{
super.onPreExecute();
fpd.show(getActivity().getFragmentManager(),"");
}
@Override
protected Void doInBackground(Void... params) {
//...
//Some Jsoup
//...
return null;
}
@Override
protected void onPostExecute(Void avoid)
{
ListView listView_top = (ListView) mView.findViewById(R.id.listview_topfeeds);
if (getActivity()!= null) {
adapter_3 = new RadiosListAdapter(getActivity(), radioname, listener_number);
listView_top.setAdapter(adapter_3);
}
listView_top.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
PlayRadioFragment fragment= new PlayRadioFragment();
Bundle bundle= new Bundle();
//...
}
});
fpd.dismiss(); //LINE 172
}
}
}
먼저 대화 상자가 표시되는지 확인한 다음 –
을 닫으라고 전화를 걸면 다음을 확인하십시오. https://stackoverflow.com/questions/10760809/how-can-you-handle-dismissing-a-dialogfragment-compatibility-lib- 완료시 –
자, 왜 이런 일이 일어 났는지 이해합니다. 고마워요,하지만 곧, "this"를 추가하면 고칠 수 있습니까? – PinkRabbits