如果在一个项目中需要用到相同的布局设计,可以通过<include /> 标签来重用layout代码,以下是我总结的使用<include /> 标签来重用layout代码的方法:


首先:定义公共的layout:testlayout.xml


<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_gravity="left"    android:orientation="vertical"    >    <TextView android:id="@+id/tv_1"          android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="aaaaaaaaaaaaa"        android:textSize="24sp"                />    <TextView android:id="@+id/tv_2"          android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="bbbbbbbbbbb"        android:textSize="24sp"                />        <TextView android:id="@+id/tv_3"          android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="cccccccccccccc"        android:textSize="24sp"                /></LinearLayout>

再次,我们定义调用的xml:main.xml


<?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" >    <TextView        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:text="@string/hello" />    <include        android:id="@+id/include_1"        layout="@layout/testlayout" />    <include        android:id="@+id/include_2"        layout="@layout/testlayout" />    <include        android:id="@+id/include_3"        layout="@layout/testlayout" />        <!--     <include layout="@layout/testlayout"/>     -->            </LinearLayout>

最后就是在代码中对其中组件的使用了:


如果我们只include“一次“ 公用的testlayout.xml ,则直接获取其中的组件即可改变其值:


 TextView  test = (TextView) findViewById(R.id.tv_1);  test.setText("testtext");

如果我们只include“多次“ 公用的testlayout.xml (比如示例代码中),则不能 直接获取其中的组件改变其值:

例如我们要修改第三个include标签中textview的值,代码如下:

View view3 =  findViewById(R.id.include_3);TextView  test = (TextView) view3.findViewById(R.id.tv_1);test.setText("testtext");

这样我们就可以对其中各个include的layout组件的值进行修改。






更多相关文章

  1. 看完《第一行代码》再看什么书可以进一步提高?
  2. Android(安卓)使用传感器
  3. android 改变TextView和EditText文字选中效果
  4. 异曲同工 7个Android应用程序源代码打包下载(与10个不一样)
  5. window 下 利用gradle编译volley源代码
  6. axml格式
  7. android 自定义Toast,可设定显示时间
  8. Android(安卓)Studio常用快捷键---不断更新中
  9. 如何将当前布局用代码保存在png图像文件中?

随机推荐

  1. [置顶] android 图标的绘制
  2. Android--WebView+HTML+Javascript
  3. 【android开发】styles.xml常用的设置属
  4. Android模仿微信、云播雷达扫描动画效果
  5. 固定屏幕显示模式 ScreenOrientation
  6. Android中的尺寸单位
  7. android webkit
  8. Android事件机制之一:事件传递和消费
  9. Android 获取内存信息
  10. 【android测试】值得学习的android测试知