Android中的布局隐藏和触发显示
点击一个控件让一个Linearlayout显示或隐藏。(控件可以改,不一定是按钮。)
1.点击一个图标隐藏或显示一个Linearlayout.
1.布局文件。
一个Linearlayout,一个ImageView
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="80dp"
android:background="@color/colorAccent"
android:orientation="vertical"
android:id="@+id/linearLayout_id">
</LinearLayout>
<ImageView
android:layout_width="80dp"
android:layout_height="80dp"
android:id="@+id/more"
android:layout_marginTop="10dp"
android:background="@color/colorAccent"
/>
</LinearLayout>
2,MainActivity.
package com.syzc.ltext;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
public class MainActivity extends AppCompatActivity {
private boolean isVisible = true;
private LinearLayout layout_1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
layout_1 = (LinearLayout) findViewById(R.id.linearLayout_id);
layout_1.setVisibility(View.GONE);//这一句即隐藏布局LinearLayout区域
//点击触发的图标
ImageView more = (ImageView) findViewById(R.id.more);
more.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (isVisible) {
isVisible = false;
layout_1.setVisibility(View.VISIBLE);//这一句显示布局LinearLayout区域
} else {
layout_1.setVisibility(View.GONE);//这一句即隐藏布局LinearLayout区域
isVisible = true;
}
}
});
}
}