先看下列xml代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/wordBgRL"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<Button
android:id="@+id/dictionaryButton"
android:background="@drawable/dictionary_btn_bg"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
style="@style/WrapContentWidgetStyle"
/>
</RelativeLayout>
在java代码里取出wordBgRL 始终为null;
wordBgRL = (RelativeLayout)findViewById(R.id.wordBgRL); // wordBgRL alwasys == null
dictionaryButton = (Button)findViewById(R.id.dictionaryButton); //dictionaryButton != null
后来发现你必须自己另写一个RelativeLayout,可能因为xmlns:android="http://schemas.android.com/apk/res/android" 它存在的原因吧。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<RelativeLayout
android:id="@+id/wordBgRL"
style="@style/FillParentWidgetStyle"
>
<Button
android:id="@+id/dictionaryButton"
android:background="@drawable/dictionary_btn_bg"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
style="@style/WrapContentWidgetStyle"
/>
</RelativeLayout>
</RelativeLayout>
本文探讨了在Android开发中遇到的一个问题:通过findViewByID无法正确获取XML布局文件中定义的RelativeLayout组件。文中提供了两种不同的XML布局代码示例,并详细解释了解决方案。
1323

被折叠的 条评论
为什么被折叠?



