0

嗨,我有一个 AysncTask,我想在完成隐藏它时运行加载视图。有谁知道如何做到这一点?目前它没有显示加载视图。

这就是我尝试过的

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    loadingView = LayoutInflater.from(getBaseContext()).inflate(R.layout.loadingcell,
            null);

    //Check Preferences which sets UI

    checkPreferences();
   PostTask posttask;
   posttask = new PostTask();
   posttask.execute();

}




    @Override
    protected Boolean doInBackground(Void... params) {
        boolean result = false;


        loadFixtures();
        publishProgress("progress");
        loadResultsFeed();
        publishProgress("progress");
        loadNewsFeed();
        publishProgress("progress");
        return result;
    }


    protected void onProgressUpdate(String... progress) {
        StringBuilder str = new StringBuilder();
            for (int i = 1; i < progress.length; i++) {
                str.append(progress[i] + " ");



            }
    }

        @Override
    protected void onPostExecute(Boolean result) {
        super.onPostExecute(result);
        Log.v("BGThread", "begin fillin data");
         FillData();
         loadingView.setVisibility(View.GONE);
      }
}

加载单元格.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/white" 
    android:id="@+id/loadingcell">


    <include
        layout="@layout/header" />

    <ProgressBar
        android:id="@+id/progressBar1"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginRight="87dp" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="115dp"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_toLeftOf="@+id/progressBar1"
        android:gravity="center"
        android:text="Loading..."
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/blue" />

</RelativeLayout>
4

2 回答 2

1

您没有在代码中使用 AsyncTask。使用这样的东西:

private class doSomething extends AsyncTask<Void, Void, Void> {

    @Override
    protected void onPreExecute() {
        //Inflate you view or do anything here before loading stuff
    }

    protected Void doInBackground(Void... urls) {
        //loading stuff
    }

    protected void onProgressUpdate(String... progress) {
        //change your UI - like a progressbar
    }

    @Override
    protected void onPostExecute(String unused) {
        //Hide the progressbar
    }
于 2012-06-13T14:15:50.293 回答
0

您需要有一个内容Activity- 您可以使用setContentView

于 2012-06-13T14:11:16.870 回答