0

aSyncタスクを使用してHTMLデータをマイニングするアプリがありますが、アプリでTabHostを操作しようとするまでは正常に機能していました。このタブを開こうとすると、ProgressDialogがポップアップしますが、しばらくするとdoInBackgroundメソッド内のキャッチに入り、例外はNullPointではなくnullにe=nullなり、アダプターにからのデータが設定されません。マイニング。ここにいくつかのコードがあります:

onCreate(){
   ...
   this.pd = ProgressDialog.show(this, "Downloading..",
            "Downloading...", true, false);
    this.pd.setCanceledOnTouchOutside(false);
    this.pd.setCancelable(true);
    ...
    task  = new DownloadTask().execute("Starting");
}

private class DownloadTask extends AsyncTask<String, Void, Object> {

    protected Object doInBackground(String... args) {
        search = new Search(person);
        try {
            search.Login();
            data = search.ParseData();

        } catch (Exception e) {
            erroUnknown = true;
        }
        adapter = new RowAdapter(DataActivity.this, data);
   }
 }

そしてtabActivity:

public class TabMenu extends TabActivity {
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.menu);

    Resources res = getResources(); // Resource object to get Drawables
    TabHost tabHost = getTabHost(); // The activity TabHost
    TabHost.TabSpec spec; // Resusable TabSpec for each tab
    Intent intent; // Reusable Intent for each tab

    // Create an Intent to launch an Activity for the tab (to be reused)
    intent = new Intent().setClass(this, DataActivity.class);

    // Initialize a TabSpec for each tab and add it to the TabHost
    spec = tabHost
            .newTabSpec("data")
            .setIndicator("Data",
                    res.getDrawable(R.drawable.ic_launcher))
            .setContent(intent);
    tabHost.addTab(spec);
    //Just test
            spec = tabHost
            .newTabSpec("artists")
            .setIndicator("Artists",
                    res.getDrawable(R.drawable.ic_launcher))
            .setContent(intent);
    tabHost.addTab(spec);

    tabHost.setCurrentTab(0);
}

}

なぜそれがキャッチブロックに入るのか考えていますか?tabActivityを使用するときに、いくつかのコードを適応させる必要がありますか?

前もって感謝します

更新:デバッグ中に、entity.getContent()からe = IllegalStateExceptionが発生しました。これは、初めて呼び出された場合でも同様です。コンテンツが正しいデータをフェッチしていないため、つまり、ログインしてページを機能させるタブがないため、StringOutOfBoundsExceptionが発生しますが、tabHostを使用すると、タブホストによってどのように影響を受けますか?

4

1 に答える 1

0

わかりました、TabActivity に渡す必要がある別のアクティビティによって渡されたインテントでした..

于 2012-06-11T13:26:46.630 に答える