-2

私はいくつかのフラグメントを持っていますが、それらはすべて、ほとんど同じように見え、同じ基本タスクから派生した非常に単純な asynctasks を使用しています。それらのほとんどでは、実行中に進行状況ダイアログの円が回転しているのが見えますが、タスクが正しく実行されているにもかかわらず表示されないものがあります。

なんで?doInBackground と onPostExecute をオーバーライドするだけのデフォルト設定を使用しています。

レイアウトが原因でしょうか(しかし、私の場合は似ていますか?

これは、問題の原因となっている asynctask のコードです (進行状況ダイアログのあるタスクとないタスクの両方が同じタスク クラスの子です)。

/**
    * AsyncTask che richiede i dati al server
    * @author pc
    *
    */
   class MuroTask extends GetDataTask {


       JSONObject jobject;
       ServerInterface server = new ServerInterface();



    @Override
    protected Boolean doInBackground(String... params) {

        try {
            jobject = server.runScriptObject(script_name, null);
        } catch (IOException e) {

            e.printStackTrace();
            return false;
        }


        return true;
    }


    @Override
    protected void onPostExecute(final Boolean success) {


    if (success) {
        if (jobject != null){
            if (parseJSON(jobject)){
            isEmpty = false;
            setContentMuro();
            }
            else{
                isEmpty = true;
            }
        }
         else{
             isEmpty = true;
         }
    }else{
        Toast.makeText(getActivity(),R.string.failed_connection, Toast.LENGTH_SHORT).show();
        return;
    }


        }

}
4

2 に答える 2

0

だから私は私がいたフラグメントクラスでそれを修正しました

@Override
public View onCreateView(LayoutInflater inf, ViewGroup container, Bundle b){
    frag_view = inf.inflate(R.layout.list_with_margins, container, false);

    return frag_view;

}

この部分は不要になったため削除し、読み込みダイアログが表示されました。

自分のビューを膨らませると進行状況ダイアログが非表示になる理由がわかりません

于 2013-08-28T11:49:30.493 に答える
0

Fragments の進行状況ダイアログ AsyncTask のコンテキストとして getActivity() を使用する必要があります。

于 2013-08-28T11:29:23.377 に答える