android 一个页面中的布局设置有两种展示效果,一个显示一个隐藏,通过点击按钮可以使其效果互换
把这两种状态分别放在两个线性布局里,再把两个线性布局平行放在一个帧式布局里, 能通过点击按钮来切换
xml布局文件
<!--按钮-->
<Button
...
android:id="@+id/button1"
...
/>
<Button
...
android:id="@+id/button2"
...
/>
<FrameLayout ...>
<!-- 第一种展示效果-->
<LinearLayout
...
android:id="@+id/layout1"
...
/>
<!-- 第二种展示效果-->
<LinearLayout
...
android:id="@+id/layout2"
...
/>
</FrameLayout>
在java代码中,为Button设置监听setOnClickListener
如果点击Button,将其中一个LinearLayout设置成可见 LinearLayout.setVisibility(View.VISIBLE);
另一个的设成不可见 LinearLayout.setVisibility(View.INVISIBLE);
参考代码如下:
private Button btn1 = (Button) findViewById(R.id.button1);
private Button btn2 = (Button) findViewById(R.id.button2);
private LinearLayout linearlayout1 = (LinearLayout) findViewById(R.id.layout1);
private LinearLayout linearlayout2 = (LinearLayout) findViewById(R.id.layout2);
<!--点击按钮1展示第一种效果-->
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearlayout1.setVisibility(View.VISIBLE); //效果1设置为可见
linearlayout2.setVisibility(View.INVISIBLE); //效果2设置为不可见
}
});
<!--点击按钮2展示第二种效果-->
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearlayout2.setVisibility(View.VISIBLE); //效果2设置为可见
linearlayout1.setVisibility(View.INVISIBLE); //效果1设置为不可见
}
});
仅供参考