【发布时间】:2015-10-16 22:53:02
【问题描述】:
我希望您帮助解决我的 android 代码中发出的“NullPointerException”错误:
XML 文件:
<?xml version="1.0" encoding="utf-8"?>
<merge android:id="@id/TableLayout1" android:background="#ff0099cc" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:Amazon="http://schemas.android.com/apk/lib/com.amazon.device.ads">
<ImageView android:id="@id/imageView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/asset_bg" android:scaleType="fitXY" />
<TableLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<TableRow android:layout_gravity="center_horizontal" android:id="@id/tableRow1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="25.0dip" android:layout_marginTop="25.0dip" android:layout_marginRight="25.0dip" android:layout_marginBottom="25.0dip" android:layout_weight="1.0">
<RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0">
<ImageView android:id="@id/imageViewLogo" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/asset_form" android:scaleType="fitXY" android:layout_weight="1.0" />
<ImageView android:id="@id/imageViewSymbol" android:layout_width="125.0dip" android:layout_height="125.0dip" android:layout_marginLeft="45.0dip" android:layout_marginTop="85.0dip" android:src="@drawable/asset_small_logo" />
<ImageView android:id="@id/imageViewPrevious" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="45.0dip" android:layout_marginBottom="45.0dip" android:src="@drawable/asset_previous" android:layout_alignBottom="@id/imageViewLogo" />
<ImageView android:id="@id/imageViewNext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="55.0dip" android:src="@drawable/asset_next" android:layout_alignTop="@id/imageViewRandom" android:layout_alignParentRight="true" />
<ScrollView android:id="@id/scrollView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="10.0dip" android:layout_marginTop="20.0dip" android:layout_marginRight="5.0dip" android:layout_marginBottom="20.0dip" android:fillViewport="true" android:layout_above="@id/imageViewPrevious" android:layout_below="@id/imageViewSymbol" android:layout_alignLeft="@id/imageViewPrevious" android:layout_alignRight="@id/imageViewNext">
<TextView android:textAppearance="?android:textAppearanceLarge" android:textSize="32.0sp" android:typeface="serif" android:textStyle="bold" android:textColor="@color/black_overlay" android:gravity="center" android:id="@id/textViewFact" android:scrollbars="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</ScrollView>
<TextView android:textAppearance="?android:textAppearanceMedium" android:textSize="18.0sp" android:textColor="@color/black_overlay" android:id="@id/textViewIndexTotal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Facts # 1 / 1578" android:layout_alignTop="@id/imageViewSymbol" android:layout_alignRight="@id/imageViewNext" />
<ImageView android:id="@id/imageViewRandom" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="135.0dip" android:layout_marginBottom="45.0dip" android:src="@drawable/asset_random" android:layout_alignBottom="@id/imageViewLogo" android:layout_alignParentRight="true" />
<ImageView android:id="@id/imageViewShare" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="125.0dip" android:layout_marginBottom="45.0dip" android:src="@drawable/asset_share" android:layout_alignBottom="@id/imageViewLogo" />
<ImageView android:id="@id/imageViewSearch" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="1.0dip" android:layout_marginRight="10.0dip" android:src="@drawable/asset_zoom" android:layout_toLeftOf="@id/textViewIndexTotal" android:layout_alignTop="@id/textViewIndexTotal" />
<ImageView android:id="@id/imageViewBrowse" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10.0dip" android:src="@drawable/asset_browse" android:layout_toLeftOf="@id/imageViewSearch" android:layout_alignTop="@id/imageViewSearch" android:layout_alignParentLeft="false" android:layout_alignParentTop="false" />
<TextView android:textAppearance="?android:textAppearanceMedium" android:textSize="18.0sp" android:textStyle="italic" android:textColor="@color/gray_overlay" android:id="@id/textViewSearchStr" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="5.0dip" android:layout_marginRight="25.0dip" android:layout_below="@id/textViewIndexTotal" android:layout_alignRight="@id/textViewIndexTotal" android:layout_alignParentLeft="false" android:layout_alignParentTop="false" />
<ImageView android:id="@id/imageViewNoAd" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/asset_no_ad" android:layout_alignTop="@id/imageViewPrevious" android:layout_centerHorizontal="true" />
<ImageView android:id="@id/imageViewCancelSearch" android:layout_width="20.0dip" android:layout_height="20.0dip" android:src="@drawable/asset_cancel" android:layout_alignTop="@id/textViewSearchStr" android:layout_alignRight="@id/textViewIndexTotal" android:layout_alignBottom="@id/textViewSearchStr" android:layout_alignParentRight="false" />
</RelativeLayout>
</TableRow>
<!-- <TableRow android:layout_gravity="bottom" android:id="@id/tableRowAd" android:background="@color/black_overlay"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" />-->
</TableLayout>
<com.amazon.device.ads.AdLayout
android:id="@+id/ad_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
Java 代码:
setContentView(R.layout.activity_fullscreen);
// 出于调试目的启用日志记录,但对生产构建禁用。
AdRegistration.enableLogging(true);
// 出于调试目的,将所有广告请求标记为测试,但设置为 false 生产构建。
AdRegistration.enableTesting(true);
//在这个级别发生错误:findViewByID
this.adView = (AdLayout) findViewById(R.id.ad_view);
//
this.adView.setListener(new SampleAdListener());
我正在尝试将亚马逊广告集成到我的应用程序中,以前的带有谷歌广告的版本运行流畅。但是,我为整合亚马逊广告所做的更改显示了上述错误。
感谢您的帮助。
【问题讨论】:
-
天哪,那个 XML 布局。
-
@RogueBaneling:请问,XML 文件中是否有任何问题需要纠正?谢谢。
-
logcat 堆栈跟踪在哪里?在您的活动中,导致 NPE 的代码在哪里?
-
谢谢大家。我发现了这个问题,我有多个版本的不同屏幕密度的布局。当我修改默认时,android studio 并没有处理其余的布局版本!
标签: java android xml amazon ads