Android开发实现Activity动态切换布局资源

2014-08-17 21:27:47|?次阅读|上传:huigezrx【已有?条评论】发表评论

关键词:Java, Android, 界面设计, 移动应用|来源:唯设编程网

Android中Activity的基本介绍Android编程Activity介绍II分别对Activity的基本概念和用法进行了介绍,还介绍了常用的API函数和Activity生命周期的相关知识。本文介绍Android开发时实现Activity动态切换布局资源的方法。

Activity是一个应用中的组件,它为用户提供一个可视的界面,方便用户操作,比如说拔打电话、照相、发邮件或者是浏览地图等。每个activity 会提供一个可视的窗口,一般情况下这个窗口会覆盖整个屏幕,但在某此情况下也会出现一些比屏幕小的窗口飘浮在另外一相窗口上面。类比Windows当中的 概念,Activity相应于一个Dialog(MFC)或者是Form(C#),它为用户提供一个可视的界面。

通常,我们的程序都不仅仅包含一个Activity,在多个Activity之间切换是大多程序员经常遇到的需求。而多个Activity之间的切换比较复杂,本文介绍另一种简便方法,即动态切换Activity对应的布局资源文件,这样给用户以切换Activity相同的效果。当然,这种方法仅仅适用比较简单的场合,复杂的应用建议还是使用intent在多个activity之间进行切换。

我们实现一个模拟的安装程序,用户点击下一步切换到下一个界面,点击上一步返回到刚才的界面,程序初始界面如下:

Android开发实现Activity动态切换布局资源

当用户点击先一步时切换到另一个界面:

Android开发实现Activity动态切换布局资源

下面我们来介绍该例子的实现方法。

首先实现第一个界面的布局文件(main_activity.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello"
        />

    <Button
        android:id="@+id/nextButton"
        android:layout_height="wrap_content"
        android:layout_width="268dp"
        android:text="@string/nextButtonText"
        />
</LinearLayout>

下面是第二个界面对应的布局文件(mylayout.xml):

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/myLayout"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffffff"
    >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/nextMessage"
        />

    <Button
        android:id="@+id/preButton"
        android:layout_height="wrap_content"
        android:layout_width="225dp"
        android:text="@string/preButtonText"
        />
</LinearLayout>
<12>
发表评论0条 】
网友评论(共?条评论)..
Android开发实现Activity动态切换布局资源