zoukankan      html  css  js  c++  java
  • Android中include标签的使用(打开引用布局,隐藏当前布局)

    在开发app的时候,有时候一个布局会反复用到,可以把反复用到的布局单独写一个xml文件,什么时候用到就用includ标签引入xml

    下面是我写的反复用到的一个xml,里面有2个button,一个TextView和一个ProgressBar

    layout_progress.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="match_parent"
    android:gravity="center"
    android:visibility="gone" >

    <ProgressBar
    android:id="@+id/ap_comments_progress"
    style="@style/LoadingProgress"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center" />

    <TextView
    android:id="@+id/tv_loading"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="5dp"
    android:text="@string/loading"
    android:textColor="@color/text_color_blue"
    android:textSize="16sp" />

      <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/linear_layout_btn"
      android:visibility="visible"
      android:orientation="vertical">
        <Button
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="@string/stop_smart_config"
          android:id="@+id/btn_cancel_config"
          android:onClick="cancelConfig"
        />

        <Button
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="@string/resmart_config"
          android:id="@+id/btn_re_config"
          android:onClick="reConfig"
        />

      </LinearLayout>

    </LinearLayout>

    在一个MainActivity引入这个布局,在activity_main.xml加入下面的代码:

    <include
    android:id="@+id/layout_loading"
    layout="@layout/layout_progress" />

    上面的layout_progress.xml中,设置visibility属性:android:visibility="gone" ,这个布局是隐藏的,我想在点击一个button的时候显示这个布局并隐藏当前布局。activity_main.xml中写一个button:

    activity_main.xml

    <Button
    android:id="@+id/bt_config_router"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left"
    android:onClick="configToRouter"
    android:text="@string/configure_to_route" />

    在MainActivity中是这么写的:

    private View loadingLayout,bodyLayout;//定义引用布局和当前布局

      loadingLayout = findViewById(R.id.layout_loading);
      bodyLayout = findViewById(R.id.body_layout);

      public void configToRouter(View v){

        loadingLayout.setVisibility(View.VISIBLE);//显示引用布局
        bodyLayout.setVisibility(View.GONE);//隐藏当前布局
    }

    这样点击按钮,就触发了显示引用布局,隐藏当前布局。

  • 相关阅读:
    Android SQLite最简单demo实现(增删查改)
    最简单的自定义控件实现
    Android复杂自定义Listview实现
    Linux 下 实现 锐捷验证的方式
    Java EE学习路线
    ubuntu 12.04 配置-1
    Dream
    iOS UITextView设置富文本不能输入中文问题
    iOS UIScrollView滚动方法对比
    iOS 自定义View通知相关
  • 原文地址:https://www.cnblogs.com/Eric-zhao/p/5205942.html
Copyright © 2011-2022 走看看