findViewById возвращает мне null в виджете ImageView. В logcat нет ошибки и ничего, что указывало бы на то, что происходит. Соответствие идентификатора и другие изображения устанавливаются правильно. Java и xml связаны тегом класса в xml, указывающим на класс, определенный в java, который является потомком RelativeLayout.
Я попытался изменить имя R.id.more_icon1, но это не сработало. Пытался очистить, и это не сработало. Использовал отладчик, чтобы убедиться, что он действительно просто движется по прошлому, и когда он возвращает mMoreIcon == null.
Что странно, так это то, что другие ImageView работают нормально.
Кто-нибудь видел это раньше или есть какие-то идеи?
Код Java: Класс является потомком RelativeLayout
@Override
protected void onFinishInflate() {
super.onFinishInflate();
mText1 = (TextView) findViewById(R.id.text1);
mText2 = (TextView) findViewById(R.id.text2);
mIcon1 = (ImageView) findViewById(R.id.icon1);
mIcon2 = (ImageView) findViewById(R.id.icon2);
// mMoreIcon is the one that gets set as null. mIcon1 and mIcon2 work just fine.
mMoreIcon = (ImageView) findViewById(R.id.more_icon1);
}
Код XML:
<ImageView android:id="@+id/icon1"
style="@style/SuggestionIcon1"
android:scaleType="centerInside"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
/>
<!-- This is the icon that is being returned as null -->
<ImageView android:id="@+id/more_icon1"
style="@style/MoreIcon2"
android:scaleType="centerInside"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:visibility="gone" />
<ImageView android:id="@+id/icon2"
style="@style/SuggestionIcon2"
android:scaleType="centerInside"
android:layout_toLeftOf="@id/more_icon1"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:visibility="gone" />
Спасибо