-1

このスレッドを実行すると、現在NULLポインター例外が発生しています

public void run() {
    long idle = 0;
    this.touch();
    do {
        idle = System.currentTimeMillis() - lastUsed;
        Log.d(TAG, "Application is idle for " + idle + " ms");
        if ((idle > 5000) && (check == false)) { // Checking For 2 Minutes.
            Log.e("AthanAd", "2 minutes over - Show Ad.");
            adView = (AdView) view.findViewById(R.id.adView);
            adView.loadAd(new AdRequest());
            check = true;
        }
        try {
            Thread.sleep(8000); // check every 5 seconds
        } catch (InterruptedException e) {
            Log.d(TAG, "Waiter interrupted!");
        }
        if (idle > period) {
            idle = 0;
            // do something here - e.g. call popup or so
        }
    } while (!stop);
    Log.d(TAG, "Finishing Waiter thread");
}

この行で例外が発生しています。

adView = (AdView) view.findViewById(R.id.adView);

アプリケーションの上部で、ビュービューを宣言しました。しかし、私はそれをどのビューにもリンクしていないことを知っています。

私の質問は、ビューを画面に表示するにはどうすればよいですか?

4

1 に答える 1

4

view.findViewById(R.id.adView); 使用しないでくださいfindViewById(R.id.adView);

LinearLayout ln=(LinearLayout)findViewById(R.id.yourid);
ln.addView(adView);
于 2012-07-09T07:50:20.507 に答える