2012-04-26 71 views
0

我想在我的應用中實現admob,但是我無法使它工作。將admob添加到延伸視圖類中的畫布中

我有一個A類,這是主類,它擴展了活動。 我有一個B類,這是在應用程序啓動時調用的類。我有以下一段代碼在類A歸檔此:

B b = new B(this); 
setContentView(B); 

在B類我有一個畫布與測試和位圖。我想用admob在廣告畫布上放置廣告,但我無法將其存檔。 B類:

private AdView adView; 
int[] degree = { 90, 180, 270, 360 };// random graden eindposities pijl 
// int width, height; 
Random rand = new Random(); 
Typeface font; 
Matrix matrix = new Matrix();// degree,x,yaxis 
Region region;// region die klikbaar is om het pijl te bewegen 
AlertDialog alertDialog; 
LinearLayout layout; 

public YesNo(Context context) { 
    super(context); 
    // TODO Auto-generated constructor stub 
} 

@Override 
public boolean onTouchEvent(MotionEvent event) { 
    //do something 
} 

@Override 
protected void onDraw(Canvas canvas) { 
    //Do something 
    invalidate(); 
} 

我試圖導入AdMob與此代碼(其他中):

public void ads() { 
    adView = new AdView((Activity) getContext(), AdSize.BANNER, 
      "xxxxxxxxxxx"); 

    LinearLayout.LayoutParams params; 
    params = new LinearLayout.LayoutParams(
      LinearLayout.LayoutParams.FILL_PARENT, 
      LinearLayout.LayoutParams.WRAP_CONTENT); 

    // Create a linear layout 
    LinearLayout layout = new LinearLayout((Activity) getContext()); 
    layout.setOrientation(LinearLayout.VERTICAL); 
    layout.setPadding(6, 6, 6, 6); 
    layout.addView(adView, params); 
} 

我搜索小時爲一個解決方案,但我找不到任何。

有人可以幫助我在正確的方向嗎?

回答

0

首先,你AdView需要一個部分您的內容視圖。您在ads()函數中創建的LinearLayout。其次,你需要創建一個AdRequest中,並與該請求加載廣告:

AdRequest request = new AdRequest(); 
request.addTestDevice(AdRequest.TEST_EMULATOR); // get test ads on emulator. 
adView.loadAd(request); 

關於如何設置你的AdView更多信息退房的documentation

0

在你ads功能,你實際上並不使用您創建的LinearLayout - 你需要將它放入另一個佈局,或直接到你的活動,用setContentView

+0

我如何把它放在另一個佈局。通過這樣做,是不是會畫在畫布的頂部,導致畫布永遠不會出現在屏幕上? – MeesterPatat 2012-04-26 21:13:45