在一个项目中我们可能会需要用到相同的布局设计,如果都写在一个xml文件中,代码显得很冗余,并且可读性也很差,所以我们可以把相同布局的代码单独写成一个模块,然后用到的时候可以通过<include /> 标签来重用layout代码。

app_title.xml:

[xhtml] view plaincopy

 
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout android:id="@+id/titleLayout" android:layout_width="fill_parent" android:layout_height="wrap_content"
  3. android:background="@drawable/bt" xmlns:android="http://schemas.android.com/apk/res/android">
  4. <TextView android:text="@string/login" android:id="@+id/title" android:textSize="20px" android:textColor="@color/white"
  5. android:layout_width="wrap_content" android:layout_centerInParent="true" android:layout_height="wrap_content"/>
  6. <Button android:text="返回" android:id="@+id/refresh" android:layout_width="wrap_content" android:layout_height="wrap_content"
  7. android:layout_alignParentRight="true" android:focusable="false" android:textColor="@color/white"
  8. android:background="@drawable/okbutton" android:layout_marginRight="3px"/>
  9. </RelativeLayout>

app_tradelogin.xml:

[xhtml] view plaincopy

 
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- android:layout_below与 android:layout_above 是必须设置的,否则界面不规则,不设置android:layout_above本界面没有滑动效果-->
  3. <ScrollView android:layout_below="@+id/titleLayout" android:layout_above="@+id/appbottom" android:layout_width="fill_parent"
  4. android:layout_height="fill_parent" android:layout_centerInParent="true" xmlns:android="http://schemas.android.com/apk/res/android">
  5. <LinearLayout android:id="@+id/theWholeLinearLayout" android:orientation="vertical" android:layout_width="fill_parent"
  6. android:layout_height="wrap_content" android:paddingLeft="10px" android:paddingTop="6px" android:paddingRight="10px" >
  7. <LinearLayout android:id="@+id/linearLayoutLeft" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
  8. <TableLayout android:id="@+id/widget43" android:layout_width="fill_parent"
  9. android:layout_height="fill_parent" android:orientation="vertical"
  10. xmlns:android="http://schemas.android.com/apk/res/android" android:stretchColumns="1">
  11. <TableRow >
  12. <!--  引用定义好的TextView样式,如果这里的属性和样式里定义的属性重复,则这里会替换样式里定义的属性-->
  13. <TextView android:id="@+id/traderName" android:text="@string/traderName" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  14. <Spinner android:id="@+id/traderNameS" android:layout_width="fill_parent" android:layout_height="wrap_content">
  15. </Spinner>
  16. </TableRow>
  17. <TableRow>
  18. <TextView android:id="@+id/departName" android:text="@string/departName" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  19. <Spinner android:id="@+id/departNameS" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
  20. </TableRow>
  21. <TableRow >
  22. <TextView android:id="@+id/strComponyName" android:text="@string/accType" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  23. <Spinner android:id="@+id/accTyte" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
  24. </TableRow>
  25. <TableRow >
  26. <TextView android:id="@+id/strUserAcc" android:text="@string/userAcc" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  27. <EditText android:id="@+id/accEditText" android:text="" android:numeric="decimal" style="@style/StyleEditText1" mce_style="@style/StyleEditText1"/>
  28. </TableRow>
  29. <TableRow >
  30. <TextView android:id="@+id/userPwd" android:text="@string/userPWD" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  31. <EditText android:id="@+id/userPwdET" android:text="" android:password="true" style="@style/StyleEditText1" mce_style="@style/StyleEditText1"/>
  32. </TableRow>
  33. <TableRow >
  34. <TextView android:id="@+id/commPwd" android:text="@string/commPWD" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  35. <EditText android:id="@+id/commPwdET" android:text="" android:password="true" style="@style/StyleEditText1" mce_style="@style/StyleEditText1"/>
  36. </TableRow>
  37. </TableLayout>
  38. </LinearLayout>
  39. <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
  40. <LinearLayout android:id="@+id/linearLayoutTab1" android:layout_height="wrap_content"
  41. android:layout_width="fill_parent" android:orientation="horizontal">
  42. <LinearLayout android:id="@+id/linearLayoutTab2" android:layout_height="wrap_content"
  43. android:layout_width="fill_parent" android:orientation="horizontal" android:layout_weight="1">
  44. <CheckBox android:id="@+id/recordAcc"  android:layout_width="wrap_content" android:layout_height="wrap_content"/>
  45. <TextView android:id="@+id/commPwd" android:text="@string/saveUserAcc" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  46. </LinearLayout>
  47. <LinearLayout android:id="@+id/linearLayoutTab2" android:layout_height="wrap_content"
  48. android:layout_width="fill_parent" android:orientation="horizontal" android:layout_weight="1">
  49. <CheckBox android:id="@+id/hideAcc" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
  50. <TextView android:id="@+id/commPwd" android:text="@string/ycUserAcc" style="@style/StyleTextInfo1" mce_style="@style/StyleTextInfo1"/>
  51. </LinearLayout>
  52. </LinearLayout>
  53. <LinearLayout android:id="@+id/linearLayoutTab1" android:layout_height="wrap_content"
  54. android:layout_width="fill_parent" android:orientation="horizontal">
  55. <LinearLayout android:layout_width="220px" android:layout_height="wrap_content" android:orientation="horizontal"
  56. android:gravity="center">
  57. <Button android:id="@+id/confirmexch" android:gravity="center" android:layout_width="wrap_content"
  58. android:layout_height="50px" android:textSize="22dp" android:text="@string/login" android:layout_weight="1"
  59. android:focusable="false" android:textColor="@color/white" android:background="@drawable/buttonl"/>
  60. </LinearLayout>
  61. <LinearLayout android:id="@+id/linearLayoutTab" android:layout_height="wrap_content"
  62. android:layout_width="fill_parent" android:gravity="center">
  63. <ImageView android:layout_width="wrap_content" android:layout_height="50px" android:id="@+id/myImage"/>
  64. </LinearLayout>
  65. </LinearLayout>
  66. </LinearLayout>
  67. </LinearLayout>
  68. </ScrollView>

app_bottom.xml:

[xhtml] view plaincopy

 
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout android:id="@+id/appbottom" android:orientation="vertical" android:layout_width="fill_parent"
  3. android:layout_height="wrap_content" android:layout_alignParentBottom="true"
  4. xmlns:android="http://schemas.android.com/apk/res/android">
  5. <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
  6. android:layout_height="wrap_content" android:background="@drawable/light">
  7. <ImageView  android:id="@+id/about" android:layout_width="30px" android:layout_height="wrap_content" android:src="@drawable/ttt"
  8. android:layout_alignParentLeft="true"/>
  9. <TextView android:id="@+id/light" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="@color/black"/>
  10. </LinearLayout>
  11. <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent"
  12. android:layout_height="wrap_content" android:background="@drawable/mainmenu">
  13. <Button android:id="@+id/quotButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  14. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  15. <Button android:id="@+id/entrustButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  16. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  17. <Button android:id="@+id/queryButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  18. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  19. <Button android:id="@+id/yinZhengButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  20. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  21. <Button android:id="@+id/recordButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  22. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  23. <Button android:id="@+id/logoutButton" android:layout_weight="1" android:layout_width="52px" android:layout_height="wrap_content"
  24. android:textColor="@color/white" android:text="" android:background="@drawable/button1"/>
  25. </LinearLayout>
  26. </LinearLayout>

tradelogin_portrait.xml:

[xhtml] view plaincopy

 
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" style="@style/StyleLayoutMain" mce_style="@style/StyleLayoutMain"
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <!-- include标签内不能设置RelativeLayout属性,如android:layout_alignParentBottom,因为不起作用 -->
  5. <!-- include标签内设置id属性后(android:id),其引用的布局layout内的id属性就不起作用了,怀疑是其引用的layout外层包裹了一层include标签
  6. 或者是覆盖了其内的属性id-->
  7. <!-- 如果没有include标签,所有布局代码都写在一个xml文件中,界面会显得很冗余,可读性很差。而且界面加载的时候是按照顺序加载的,前面的布局不能
  8. 调用其后面的布局id。而采用include后,一个include中可以引用其后的include中的布局id属性 -->
  9. <include android:id="@id/titleLayout" layout="@layout/app_title" />
  10. <include layout="@layout/app_tradelogin"/>
  11. <include layout="@layout/app_bottom"/>
  12. </RelativeLayout>

效果如下:

【Android 界面效果25】android中include标签的使用的更多相关文章

  1. android中include标签使用详解

    android中include标签是为了便于控件的覆用的一个很好解决方案.   但是也有一些需要注意的地方,下面是本人在项目中碰到过的一个问题,做此记录,便于以后查看.   include标签用法. ...

  2. Android中include标签的使用

    在Android的开发中,我们知道布局文件可以让我们很方便的对各个UI控件进行位置安排跟属性设置,而在程序中可以直接取得控件并赋予对应操作功能.但是,如果是一个复杂的界面设计,我们把所有布局都放在一个 ...

  3. Android中include标签的使用(打开引用布局,隐藏当前布局)

    在开发app的时候,有时候一个布局会反复用到,可以把反复用到的布局单独写一个xml文件,什么时候用到就用includ标签引入xml 下面是我写的反复用到的一个xml,里面有2个button,一个Tex ...

  4. 【Android 界面效果19】Android中shape的使用

    Android中常常使用shape来定义控件的一些显示属性,今天看了一些shape的使用,对shape有了大体的了解,稍作总结: 先看下面的代码:         <shape>      ...

  5. 【Android 界面效果32】ImageView中XML属性src和background的区别

    background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...

  6. 【Android 界面效果30】Android中ImageSwitcher结合Gallery展示SD卡中的资源图片

    本文主要是写关于ImageSwitcher结合Gallery组件如何展示SDCard中的资源图片,相信大家都看过API Demo 中也有关于这个例子的,但API Demo 中的例子是展示工程中Draw ...

  7. 【Android 界面效果12】EditText中的多行输入问题

    ------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 我们在使用EditText进行多行输入的时候,通常的写法如下: <EditText android ...

  8. 【Android 界面效果31】Android--侧滑菜单应用的实现

    侧滑菜单应用现在非常多,而且实现方式也多种多样.通过在网上的多方查找,我找到郭霖少侠的这篇文章:http://blog.csdn.net/guolin_blog/article/details/874 ...

  9. 【Android 界面效果21】Android ViewPager使用详解

    这是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api.而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等.那如 ...

随机推荐

  1. ThinkPad X200s 安装 Mac OSX

    ===================先说一下注意事项================== 无论任何安装方法(U盘.光盘)不能进入安装界面,或者鼠标无法移动.那就在变色龙引导界面加入以下代码 cpus ...

  2. css3 前缀

  3. 在Button的click事件中引起客户端JavaScript

    void action1_Execute(object sender, SimpleActionExecuteEventArgs e) { WebWindow.CurrentRequestWindow ...

  4. RESTful Webservice (一) 概念

    Representational State Transfer(表述性状态转移) RSET是一种架构风格,其核心是面向资源,REST专门针对网络应用设计和开发方式,以降低开发的复杂性,提高系统的可伸缩 ...

  5. iOS开发-用预处理指令代替注释

    有时候我们在调试程序的时候,想不执行某一段代码或者某些方法,我们会用注释,但是这样看上去就会让你的代码显示“很绿”,此时我们可以用一下代码 #if 0 // 你不想执行的代码 #endif 这样就可以 ...

  6. Java中移位操作运算符的理解

    java中的移位运算符有三种: 1. <<: 左移 2. >>: 右移 3. >>>: 无符号右移 使用方法:左移就是将左边的操作数在内存中的二进制数据左移指 ...

  7. SAE J1850 VPW PWM, SAE J2411 SWC, ISO 11898 CAN, SAE J1708, Chrysler CCD 接口芯片电路

    SAE J1850 VPW 接口芯片电路 SAE J1850 PWM 接口芯片电路 SAE J2411 SWC 接口芯片电路 ISO 11898 CAN 接口芯片电路 CANH 和CANL 上的电容 ...

  8. 推荐大家使用的CSS书写规范及顺序

    @设计达人网 写了这么久的CSS,但大部分前端er都没有按照良好的CSS书写规范来写CSS代码,这样会影响代码的阅读体验,这里我总结一个CSS书写规范.CSS书写顺序供大家参考,这些是参考了国外一些文 ...

  9. ASP.NET Web Forms的改进

    虽然ASP.NET Web Forms不是vNext计划的一部分,但它并没有被忽视.作为Visual Studio 2013 Update 2的一部分,它重新开始支持新工具.EF集成和Roslyn. ...

  10. SGU 538. Emoticons 水题

    538. Emoticons 题目连接: http://acm.sgu.ru/problem.php?contest=0&problem=538 Description A berland n ...