include初识

来源:互联网 发布:excel图表数据区域扩大 编辑:程序博客网 时间:2024/06/18 03:47

很多重复布局没有必要一次次的写,所有就引入了include
举一个demo

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"              android:orientation="horizontal"              android:layout_width="match_parent"              android:layout_height="match_parent">    <CheckBox        android:id="@+id/cbkCheck"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        />    <TextView        android:id="@+id/tvText"        android:text="NewText"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        /></LinearLayout>

引入布局

<?xml version="1.0" encoding="utf-8"?><LinearLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_include_test"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.axnet.buju0711.IncludeTestActivity">    <include        android:layout_height="wrap_content"        android:layout_width="wrap_content"        android:id="@+id/includeOne"        layout="@layout/layout_demo"        />    <include        android:layout_height="wrap_content"        android:layout_width="wrap_content"        android:id="@+id/includeTwo"        layout="@layout/layout_demo"        />    <include        android:layout_height="wrap_content"        android:layout_width="wrap_content"        android:id="@+id/includeThree"        layout="@layout/layout_demo"        /></LinearLayout>

单独引入一个include的时候不用设置宽和高

   <include        android:id="@+id/includeOne"        layout="@layout/layout_demo"        />

但是如果要引入几个include
就必须设置宽高

android:layout_height="wrap_content"android:layout_width="wrap_content"

这里写图片描述
项目中现在有引入的三个include
但是怎么修改include中TextView上的文字呢
需要进行如下三步
第一步获取include对象
第二步通过include对象获取到Textview对象
第三步给TextView赋值

  //第一步获取include对象        View includeOne=findViewById(R.id.includeOne);        View includeTwo=findViewById(R.id.includeTwo);        View includeThree=findViewById(R.id.includeThree);        //第二步通过include对象获取到Textview对象        TextView tvOne=(TextView)includeOne.findViewById(R.id.tvText);        TextView tvTwo=(TextView)includeTwo.findViewById(R.id.tvText);        TextView tvThree=(TextView)includeThree.findViewById(R.id.tvText);        //第三步给TextView赋值        tvOne.setText("wang2");        tvTwo.setText("li2");        tvThree.setText("liu2");

这里写图片描述