2012-04-26 34 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