android布局的显示和隐藏

实现效果图



android布局的显示和隐藏_第1张图片android布局的显示和隐藏_第2张图片

1、新建一个布局文件activity_image.xml

xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/ll_two"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:orientation="horizontal"
        android:gravity="center_vertical"
        android:background="@android:color/black">
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="3"
            android:orientation="horizontal">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:src="@mipmap/address_default_bg"
                android:layout_marginLeft="15dp"/>
            <TextView
                android:id="@+id/tiaomu_two"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="最新投票"
                android:textColor="@android:color/holo_blue_light"
                android:textSize="18sp"
                android:layout_marginLeft="7dp"/>
        LinearLayout>
        <RelativeLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center">
            <ImageView
                android:id="@+id/iv_one"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/expan2"
                android:layout_marginTop="10dp"
                android:checked="false"
                android:visibility="gone"/>
            <ImageView
                android:id="@+id/iv_two"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@mipmap/expan1"
                android:layout_marginTop="10dp"
                android:visibility="visible"/>
        RelativeLayout>
    LinearLayout>
        <LinearLayout
            android:id="@+id/ll_hide"
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:orientation="horizontal"
            android:visibility="visible">
            <ImageView
                android:id="@+id/img"
                android:layout_width="60dp"
                android:layout_height="60dp"
                android:src="@mipmap/timg"
                android:layout_marginTop="5dp"
                android:layout_marginLeft="10dp"/>
            <TextView
                android:id="@+id/tv_tv"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="你喜欢什么活动"
                android:textColor="#000"
                android:layout_marginTop="10dp"
                android:layout_marginLeft="5dp"/>
            <View
                android:layout_width="120dp"
                android:layout_height="wrap_content" />
            <TextView
                android:id="@+id/tv_one"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="06-12 13:11"
                android:layout_gravity="center"/>
        LinearLayout>

LinearLayout>

在布局中使用android:visibility=""属性设置控件的显示和隐藏属性,"visible"为显示,"gone"为隐藏,"invisible"为隐藏并保留控件位置,在布局里给需要隐藏的控件做隐藏或显示属性,在布局里添加两张图片,用来给隐藏和显示做点击事件,一张设置为隐藏,一张为显示。

2、class文件

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_image);
        final LinearLayout linearLayout=(LinearLayout)findViewById(R.id.ll_hide);
        final ImageView hide=(ImageView)findViewById(R.id.iv_one);
        final ImageView show=(ImageView)findViewById(R.id.iv_two);

        hide.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                linearLayout.setVisibility(View.VISIBLE);
                show.setVisibility(View.VISIBLE);
                hide.setVisibility(View.INVISIBLE);
            }
        });
        show.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                linearLayout.setVisibility(View.GONE);
                show.setVisibility(View.INVISIBLE);
                hide.setVisibility(View.VISIBLE);
            }
        });
    }
}



你可能感兴趣的:(android布局的显示和隐藏)