Android基于基于格局嵌套的页面导航实现

Android基于基于布局嵌套的页面导航实现

 

 页面如下:

Android基于基于格局嵌套的页面导航实现

 

 

 

 

 

 

主页面的布局分隔为三部分:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gztab_content"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
  <!-- header  -->
 <include android:id="@+id/gz_top" layout="@layout/gzmgr_top_panel" android:layout_width="fill_parent"
       android:layout_height="wrap_content"/>
  <!-- content  -->
  
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
        </TabWidget>

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

          <LinearLayout 
			    android:layout_width="fill_parent"
			    android:layout_height="fill_parent"
			    android:orientation="vertical" 
			    android:id="@+id/unhanlderLayout">
			           <Button android:id="@+id/gzbtn_unhandler_refresh" 
			               android:layout_width="fill_parent"
			               android:layout_height="wrap_content"
			               android:text="刷新"
			               />
					  <LinearLayout 
					    android:layout_width="fill_parent"
					    android:layout_height="fill_parent"
					    android:orientation="vertical" >
					     <ListView android:id="@+id/gz_unhandler_ListView"
					         android:layout_width="fill_parent"
					         android:layout_height="wrap_content">
					     </ListView>
					  </LinearLayout>
			  </LinearLayout>

             <LinearLayout 
			    android:layout_width="fill_parent"
			    android:layout_height="fill_parent"
			    android:orientation="vertical" 
				android:id="@+id/handlingLayout">
			           <Button android:id="@+id/gzbtn_handlering_refresh" 
			               android:layout_width="fill_parent"
			               android:layout_height="wrap_content"
			               android:text="刷新"
			               />
					  <LinearLayout 
					    android:layout_width="fill_parent"
					    android:layout_height="fill_parent"
					    android:orientation="vertical" >
					     <ListView android:id="@+id/gz_handleringListView"
					         android:layout_width="fill_parent"
					         android:layout_height="wrap_content">
					     </ListView>
					  </LinearLayout>
			  </LinearLayout>

            <LinearLayout 
			    android:layout_width="fill_parent"
			    android:layout_height="fill_parent"
			    android:orientation="vertical" 
			    android:id="@+id/handledLayout">
			           <Button android:id="@+id/gzbtn_handled_refresh" 
			               android:layout_width="fill_parent"
			               android:layout_height="wrap_content"
			               android:text="刷新"
			               />
					  <LinearLayout 
					    android:layout_width="fill_parent"
					    android:layout_height="fill_parent"
					    android:orientation="vertical" >
					     <ListView android:id="@+id/gzgzbtn_handled_ListView"
					         android:layout_width="fill_parent"
					         android:layout_height="wrap_content">
					     </ListView>
					  </LinearLayout>
			  </LinearLayout>
        </FrameLayout>
    </LinearLayout>
</TabHost>
  <!-- bottom  -->
  <Button android:id="@+id/btnManyInfo" android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:text="更多(10)"/>
</LinearLayout>

 

注意观察上面标记为红色的android:id均采用android系统默认的名称:

 

页面的导航组件:

<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout  android:layout_width="fill_parent" android:layout_height="wrap_content" xmlns:android="http://schemas.android.com/apk/res/android">
    <Button 
        android:id="@+id/top_gzbtn_left" 
         android:text="返回" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_marginLeft="12.0dip" 
         android:layout_alignParentLeft="true" 
         android:layout_centerVertical="true" />
    <Button 
         android:id="@+id/top_gzbtn_right" 
         android:text="发布" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_marginRight="12.0dip" 
         android:layout_alignParentRight="true" 
         android:layout_centerVertical="true" />
    <TextView android:textSize="22.0sp" 
         android:textColor="#ffffffff"
          android:ellipsize="middle"
           android:gravity="center_horizontal" 
           android:id="@+id/top_gztxt_title"
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text="故障管理" android:singleLine="true" android:layout_toLeftOf="@+id/top_gzbtn_right" android:layout_toRightOf="@+id/top_btn_left0" android:layout_centerInParent="true" android:layout_alignWithParentIfMissing="true" >
        </TextView>
</RelativeLayout>

 

上面红色布局主要采用相对布局定位相关的导航位置:

 

 

每一个tab页面的中的内容如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <!-- 个人信息 -->
    <LinearLayout android:id="@+id/gzPersonInfoLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >
	    <ImageView  android:id="@+id/gzimg_item_Img"
	        android:layout_width="wrap_content"
	        android:layout_height="wrap_content"
	        android:layout_margin="5px"
	        android:layout_gravity="left"
	        android:src="@drawable/ic_launcher"/>
	    <TableLayout android:layout_width="fill_parent"
	        android:layout_height="fill_parent"
	        android:shrinkColumns="1"
	        android:layout_gravity="right"
	        >
	        <TableRow >
	              <TextView   android:id="@+id/gztxt_item_userCode"                      android:padding="3dip"  />         
	              <TextView   android:id="@+id/gztxt_item_UserCollectionName"          android:padding="3dip"  />         
	              <TextView   android:id="@+id/gztxt_item_Time"                       android:padding="3dip"  /> 
	        </TableRow>
	        <TableRow >
	              <TextView    android:id="@+id/gztxt_item_name_person"                       android:padding="3dip"  />         
	              <TextView                android:text=""             android:padding="3dip"  />         
	              <TextView                     android:padding="3dip"  /> 
	        </TableRow>
	    </TableLayout>
	</LinearLayout>
    <LinearLayout 
            android:id="@+id/gzItemLayout"
		    android:layout_width="fill_parent"
		    android:layout_height="fill_parent"
		    android:orientation="horizontal" >
	            <TableLayout   
				     android:layout_width="fill_parent"     
				     android:layout_height="fill_parent" >
				       <TableRow>         
				           <TextView             android:text="项目名称:"             android:padding="3dip" />         
				           <TextView     android:id="@+id/gztxt_item_name"                      android:padding="3dip" />         
				           <TextView             android:text="列车编号:"             android:padding="3dip"  />     
				           <TextView             android:id="@+id/gztxt_item_code"             android:padding="3dip"  />     
				       </TableRow> 
				</TableLayout>
	 </LinearLayout>
	   <LinearLayout 
	            android:id="@+id/gzItemLayout"
			    android:layout_width="fill_parent"
			    android:layout_height="fill_parent"
			    android:orientation="horizontal" >
			         <TableLayout android:layout_width="fill_parent"
			        android:layout_height="fill_parent"
			        android:shrinkColumns="1"
			        android:layout_gravity="right"
			        >
			        <TableRow >
			              <TextView           android:text="故障负责人"             android:padding="3dip"  />         
			              <TextView   android:id="@+id/gztxt_item_user"            android:padding="3dip"  />         
			        </TableRow>
			        <TableRow >
			              <TextView             android:text="故障处理人"             android:padding="3dip"  />         
			              <TextView      android:id="@+id/gztxt_item_handler"                        android:padding="3dip"  />         
			        </TableRow>
			                <TableRow >
			              <TextView               android:text="故障描述"             android:padding="3dip"  />         
			              <TextView      android:id="@+id/gztxt_item_descption"      android:padding="3dip"  />         
			        </TableRow>
			         <TableRow >
			              <TextView              android:text="问题级别:"             android:padding="3dip"  />         
			              <TextView     android:id="@+id/gztxt_item_level"            android:text="一般"             android:padding="3dip"  />         
			        </TableRow>
			           <TableRow >
			              <TextView             android:text="状态:"             android:padding="3dip"  />         
			              <TextView      android:id="@+id/gztxt_item_status"              android:text="未解决"             android:padding="3dip"  />         
			        </TableRow>
			    </TableLayout>
	   </LinearLayout>
</LinearLayout>