首页 > 系统 > Android > 正文

android编程实现局部界面动态切换的方法

2020-04-11 11:17:55
字体:
来源:转载
供稿:网友

本文实例讲述了android编程实现局部界面动态切换的方法。分享给大家供大家参考,具体如下:

局部界面固定,局部界面可以动态切换。效果如下:

这个效果由3个layout构成

main.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="horizontal" >  <LinearLayout    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:layout_weight="1"    android:background="@android:color/black" >    <Button      android:id="@+id/btnSwitch"      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:text="switch" />    <Button      android:id="@+id/btnScreen"      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:text="screen" />  </LinearLayout>  <LinearLayout    android:id="@+id/frameSwitch"    android:layout_width="160dp"    android:layout_height="fill_parent"    android:background="@android:color/white" >  </LinearLayout></LinearLayout>

one.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:background="@color/yellow"  android:orientation="vertical" >  <TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="this is linearLayout one" /></LinearLayout>

two.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:orientation="vertical" >  <TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="this is linearLayout two" />  <Button    android:id="@+id/btnSecond"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="btnSecond" /></LinearLayout>

下面是Java代码

public class ZzzAndroidActivity extends Activity {  private LinearLayout frameSwitch;  /** Called when the activity is first created. */  @Override  public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.main);    frameSwitch = (LinearLayout) findViewById(R.id.frameSwitch);    Button btnSwitch = (Button) findViewById(R.id.btnSwitch);    btnSwitch.setOnClickListener(new OnClickListener() {      boolean boo = false;      @Override      public void onClick(View v) {        boo = !boo;        if (boo) {          getViewOne();        } else {          getViewSecond();        }      }    });    /*     * 是否全屏     */    Button btnScreen = (Button) findViewById(R.id.btnScreen);    btnScreen.setOnClickListener(new OnClickListener() {      boolean isScreen = false;      @Override      public void onClick(View v) {        isScreen = !isScreen;        if (isScreen) {          frameSwitch.setVisibility(android.view.View.GONE);        } else {          frameSwitch.setVisibility(android.view.View.VISIBLE);        }      }    });  }  public void getViewOne() {    View viewOne = getLayoutInflater().inflate(R.layout.one, null);    frameSwitch.removeAllViews();    frameSwitch.addView(viewOne, LayoutParams.FILL_PARENT,        LayoutParams.FILL_PARENT);  }  public void getViewSecond() {    View viewSecond = getLayoutInflater().inflate(R.layout.two, null);    Button btn = (Button) viewSecond.findViewById(R.id.btnSecond);    btn.setOnClickListener(new OnClickListener() {      @Override      public void onClick(View v) {        Toast.makeText(ZzzAndroidActivity.this, "hello world",            Toast.LENGTH_LONG).show();      }    });    frameSwitch.removeAllViews();    frameSwitch.addView(viewSecond, LayoutParams.FILL_PARENT,        LayoutParams.FILL_PARENT);  }}

希望本文所述对大家Android程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表