当前位置: 代码迷 >> Android >> Android基于基于格局嵌套的页面导航实现
  详细解决方案

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

热度:109   发布时间:2016-05-01 15:44:10.0
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>

?

  相关解决方案