相关疑难解决方法(0)

以编程方式设置视图宽度

我正在尝试在代码中设置视图的宽度和高度,以显示我正在处理的免费应用的广告.除了此广告之外,所有UI都以XML格式完成.以下是显示广告的代码.它在onCreate.

AdView adView = new AdView(this,"ad_url","my_ad_key",true,true);
LinearLayout layout = (LinearLayout) findViewById(R.id.testing);
adView.setAdListener(this);
layout.addView(adView);
Run Code Online (Sandbox Code Playgroud)

这会导致广告显示如下.正如您所看到的,宽度并不完全填满整个页面.

在此输入图像描述

现在,当我将代码更改为此尝试设置大小时:

AdView adView = new AdView(this,"ad_url","my_ad_key",true,true);
LinearLayout layout = (LinearLayout) findViewById(R.id.testing);
adView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 
                       LayoutParams.WRAP_CONTENT));
adView.setAdListener(this);
layout.addView(adView);
Run Code Online (Sandbox Code Playgroud)

我明白了:

在此输入图像描述

我尝试了所有不同的组合,FILL_PARENT并且WRAP_CONTENT所有组合都具有相同的结果.有什么我想念的吗?或者另一种方法,我可以让广告填充设备的宽度而不填充高度?非常感谢任何建议和帮助.

编辑当我尝试将其放入XML时我得到一个例外:

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:id="@+id/main_layout">

<fragment
    android:name="com.jasoncrosby.app.tipcalculatorfree.MainButtonFragment"
android:id="@+id/button_frag"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>
<com.adsdk.sdk.banner.AdView
    android:id="@+id/banner"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"/>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

> 09-09 22:39:43.448: E/AndroidRuntime(586): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.jasoncrosby.app.tipcalculatorfree/com.jasoncrosby.app.tipcalculatorfree.MainActivity}: android.view.InflateException: Binary XML file line #14: Error inflating class com.adsdk.sdk.banner.AdView
09-09 22:39:43.448: E/AndroidRuntime(586):  at …
Run Code Online (Sandbox Code Playgroud)

android android-layout mobfox

64
推荐指数
4
解决办法
15万
查看次数

标签 统计

android ×1

android-layout ×1

mobfox ×1