`
hm4123660
  • 浏览: 283505 次
  • 性别: Icon_minigender_1
  • 来自: 广州
博客专栏
Dea4ce76-f328-3ab2-b24a-fb268e1eeb75
数据结构
浏览量:70315
社区版块
存档分类
最新评论

Android布局xml的include

阅读更多

     

 

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

 

 

 

btn.xml:

 

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="wrap_content"  
    android:orientation="vertical" >  
    <Button  
        android:id="@+id/btn"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"   
        android:text="Button">  
    </Button>  
</LinearLayout>  

 

main.xml

 

 

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"   
    >  
    <include android:id="@+id/in1" layout="@layout/btn"/>  
    <include android:id="@+id/in2" layout="@layout/btn"/>  
    <TextView android:id="@+id/tv"  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:text="@string/hello" />  
</LinearLayout>  

 

TestActivity:

 

 

Java代码  收藏代码
package com.hilary;  
  
import android.app.Activity;  
import android.graphics.Color;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.LinearLayout;  
import android.widget.TextView;  
  
import com.hialry.R;  
/** 
* 
*@author:hilary 
*@Date:2011-12-8 
*@description: 
* 
**/  
public class TestActivity extends Activity {  
    private TextView tv = null;  
    private LinearLayout ll = null;  
    private LinearLayout ll2 = null;  
      
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        tv = (TextView) findViewById(R.id.tv);  
        //如果一个布局文件中包含同一个xml文件,这两个xml中的控件Id是一样的,当需要操作这些控件时,需要通过定义这两个View来加以区分,  
        //如果就包含同一个xml文件侧不需要此步操作  
        ll = (LinearLayout) findViewById(R.id.in1); 
        ll2 = (LinearLayout) findViewById(R.id.in2);  
          
        ll.setBackgroundColor(Color.RED);  
          
        Button btn = (Button) ll.findViewById(R.id.btn);  
        btn.setOnClickListener(new OnClickListener() {  
              
            @Override  
            public void onClick(View v) {  
                tv.setText("My name is hilary");  
            }  
        });  
          
        Button btn2 = (Button) ll2.findViewById(R.id.btn);  
        btn2.setOnClickListener(new OnClickListener() {  
              
            @Override  
            public void onClick(View v) {  
                tv.setText(" You select second Button!");  
                  
            }  
        });  
    }  

 
  •  如果没有include标签,所有布局代码都写在一个xml文件中,界面会显得很冗余,可读性很差。而且界面加载的时候是按照顺序加载的,前面的布局不能调用其后面的布局id。而采用include后,一个include中可以引用其后的include中的布局id属性 --> 
分享到:
评论

相关推荐

    android xml中include标签的使用

    总结,`&lt;include /&gt;`标签是Android XML布局中的一个重要特性,它简化了布局的管理和复用,提高了代码的可维护性。通过合理地使用`&lt;include /&gt;`和`&lt;merge&gt;`,以及结合其他技术如Data Binding,我们可以构建出更加高效...

    XML_INCLUDE示例

    在Android应用开发中,XML通常被用来定义布局、资源、数据等,而XML_INCLUDE则是解决大而复杂的XML布局文件的有效手段。这篇博客将深入探讨XML_INCLUDE的用法及其优势。 XML_INCLUDE的工作原理是通过在主XML文件中...

    android布局_Android布局_android_

    本文将深入探讨Android布局的各种类型及其使用方法,旨在帮助开发者更好地理解和掌握Android应用的UI设计。 首先,我们来了解Android中的基本布局类型: 1. **线性布局(LinearLayout)**:这是最基础的布局,它...

    android include merge标签

    现在,当你在其他布局中`include``titlebar2.xml`时,ImageView会直接插入到包含它的布局中,没有额外的根视图,提升了渲染效率。 需要注意的是,`merge`标签必须作为顶级元素,并且不能包含根布局属性(如`android...

    android 布局别名的应用

    在Android的资源目录中,我们可以创建一个XML文件,这个文件并不包含任何UI元素的定义,而是使用`&lt;include/&gt;`标签指向实际的布局文件。这样做可以让我们的代码更加灵活,更容易进行维护和适配。 ### 二、为什么使用...

    java android 布局文件

    Android布局文件是用来描述应用程序界面上组件(如按钮、文本视图、图像视图等)的结构和位置的XML文档。这些文件定义了控件的属性,如大小、位置、文本、样式等,并且可以包含多个嵌套的布局以实现复杂的屏幕设计。...

    Android中include和merge标签的使用

    总结来说,`include`和`merge`是Android布局设计中的强大工具,通过合理使用它们,开发者可以创建更灵活、高效且易于维护的布局结构。理解并熟练掌握这两个标签的使用,对于提升Android应用的用户体验和开发效率具有...

    Android 布局优化

    本文将深入探讨如何利用`include`、`ViewStub`和`merge`标签进行Android布局优化。 首先,`include`标签是一种强大的布局重用机制。在大型应用中,往往有许多相似或重复的布局元素,如导航栏、头部视图等。通过`...

    [Android] 使用Include布局+Fragment滑动切换屏幕(源代码)

    `Include`布局是Android XML布局设计中的一个重要特性,它允许开发者将一个布局文件嵌入到另一个布局文件中,这样可以提高代码的复用性,减少重复编写相似布局的工作。例如,在多个页面都需要一个导航栏或者底部菜单...

    Android布局控件之linearlayout案例

    6. **使用`include`和`merge`标签**:为了提高代码复用性和减少XML布局文件的复杂性,我们可以使用`&lt;include&gt;`标签引入其他布局,而`&lt;merge&gt;`标签可以减少布局层级,提升性能。 7. **自定义LinearLayout的行为**:...

    android中include和merge标记的区别和使用

    `include`和`merge`标签是Android XML布局文件中两个非常重要的元素,它们帮助开发者实现布局的重用和优化,提高代码的可维护性和效率。接下来,我们将深入探讨这两个标记的区别和使用方法。 ### `include`标签 `...

    Android常见XML转义字符(总结)

    在Android开发中,XML(eXtensible Markup Language)是一种常用的数据交换格式,它用于描述应用程序的界面布局、配置文件等内容。XML具有严格的语法规则,其中一些特定的字符被视为特殊字符,不能直接在XML文档中...

    android merge和include简单使用

    总结起来,`merge`和`include`是Android布局设计中的重要工具,它们帮助开发者优化布局层次,提高代码复用性,从而提升应用的整体质量。理解并熟练掌握这两个概念,对于任何Android开发者来说都是非常有益的。

    Android开发——布局管理

    本文将深入探讨Android布局管理的基本概念、常用布局类型以及如何优化布局性能。 首先,Android提供了几种内置的布局类型,以满足不同设计需求: 1. **线性布局(LinearLayout)**:这是最基础的布局,支持水平或...

    ch05 Android布局

    《Android布局深度解析》 Android布局是开发Android应用的基础元素之一,它决定了应用程序用户界面的结构和外观。在Android开发中,布局管理器用于组织和定位应用中的各个视图(Views)和视图组(ViewGroups)。...

    Android布局技巧之include、merge与ViewStub标签的巧用

    总结,`include`、`merge`和`ViewStub`是Android布局管理的利器,它们能帮助开发者更有效地组织和优化布局,提高应用性能。理解并合理使用这些标签,可以使UI代码更加整洁,同时减少性能瓶颈。在实际开发中,结合...

    include 方法使用

    `include`标签是Android布局复用的重要工具,它允许开发者将一个布局文件嵌入到另一个布局文件中,从而减少代码重复,提高开发效率,并有助于维护。本篇文章将深入探讨`include`标签的使用方法及其注意事项。 ### 1...

    android布局技巧

    ### Android布局技巧详解 在Android应用开发中,布局设计是构建用户界面的关键步骤。良好的布局不仅能够提升用户体验,还能优化应用性能。本文将深入探讨Android布局的技巧,帮助开发者掌握如何利用基本布局组件...

    android 程序中动态添加删除控件或布局

    - **使用LayoutInflater**:Android提供了LayoutInflater服务,可以将XML布局文件中的视图转换为运行时的对象。首先,我们需要通过`getSystemService()`方法获取LayoutInflater实例,然后调用`inflate()`方法加载...

Global site tag (gtag.js) - Google Analytics