在使用inlcude时,网上说在include便签中不能带ID,如果带了ID需要用inflate加载要被inlude的这个布局文件,然后再获取这个布局文件上的对象。
我在使用的过程中发现,include标签如果带了ID,那么他包含的布局文件的根节点就不要包含ID,否则出现nullpointer异常。
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/parent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom"
android:orientation="vertical" >
<!-- 动态显示界面 -->
<LinearLayout
android:id="@+id/body"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >
</LinearLayout>
<!-- 底部功能菜单栏 -->
<include
layout="@layout/tab_menu_view" />
</LinearLayout>
tab_menu_view.xml
<?xml version="1.0" encoding="UTF-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/radiogroupMenu"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<RadioButton
android:id="@+id/radiobtnHome"
style="@style/main_tab_bottom"
android:checked="true"
android:drawableTop="@drawable/menu_home"
android:gravity="center"
android:text="定位" />
<RadioButton
android:id="@+id/radiobtnTrack"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_tracker"
android:gravity="center"
android:text="追踪" />
<RadioButton
android:id="@+id/radiobtnHelp"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_help"
android:gravity="center"
android:text="求助" />
<RadioButton
android:id="@+id/radiobtnSecurity"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_mobilesafe"
android:gravity="center"
android:text="防盗" />
<RadioButton
android:id="@+id/radiobtnMore"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_more"
android:gravity="center"
android:text="更多" />
</RadioGroup>
我在使用的过程中发现,include标签如果带了ID,那么他包含的布局文件的根节点就不要包含ID,否则出现nullpointer异常。
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/parent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom"
android:orientation="vertical" >
<!-- 动态显示界面 -->
<LinearLayout
android:id="@+id/body"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/white"
android:orientation="vertical" >
</LinearLayout>
<!-- 底部功能菜单栏 -->
<include
layout="@layout/tab_menu_view" />
</LinearLayout>
tab_menu_view.xml
<?xml version="1.0" encoding="UTF-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/radiogroupMenu"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<RadioButton
android:id="@+id/radiobtnHome"
style="@style/main_tab_bottom"
android:checked="true"
android:drawableTop="@drawable/menu_home"
android:gravity="center"
android:text="定位" />
<RadioButton
android:id="@+id/radiobtnTrack"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_tracker"
android:gravity="center"
android:text="追踪" />
<RadioButton
android:id="@+id/radiobtnHelp"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_help"
android:gravity="center"
android:text="求助" />
<RadioButton
android:id="@+id/radiobtnSecurity"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_mobilesafe"
android:gravity="center"
android:text="防盗" />
<RadioButton
android:id="@+id/radiobtnMore"
style="@style/main_tab_bottom"
android:drawableTop="@drawable/menu_more"
android:gravity="center"
android:text="更多" />
</RadioGroup>