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

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

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

在资源文件string.xml中添加如下字符串资源:

    <string name="hello">欢迎安装本程序,本程序采用安卓技术,保证

        更炫的体验,更稳定的操作环境,更优质的服务。


请点击“下一步”继续

</string>
    <string name="nextMessage">对不起,程序未开发完全,请等待新版本的发布



        点击"上一步"返回

</string>
    <string name="nextButtonText">下一步</string>
    <string name="preButtonText">上一步</string>

下面是Activity类(MainActivity.java)的实现代码:

package com.example.myapplication2.app;

import android.app.Activity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.view.Menu;

public class MainActivity extends Activity {
    private Button nextButton  ;
    private Button preButton   ;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //载入main.xml
        setContentView(R.layout.main_activity);

        //以findById的方式找到nextButton对象,并且绑定事件
        nextButton = (Button)findViewById(R.id.nextButton);
        nextButton.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                goNextPage();
            }
        });

    }

    //跳转到下一页
    private void goNextPage(){
        setContentView(R.layout.mylayout);
        preButton = (Button)findViewById(R.id.preButton);
        preButton.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v) {
                goPrePage();
            }
        });
    }

    //跳转到上一页
    private void goPrePage(){
        setContentView(R.layout.main_activity);
        nextButton = (Button)findViewById(R.id.nextButton);
        nextButton.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v) {
                goNextPage();
            }
        });
    }
}

在onCreate函数中,我们通过setContentView函数默认载入main_activity对应的布局资源文件,并对界面中的按钮绑定了点击事件,当用户点击按钮时调用goNextPage成员函数,goNextPage函数调用setContentView函数将Activity类对应的布局资源文件切换到mylayout,然后绑定了preButton按钮对应的点击事件,当该按钮被电击时会调用成员函数goPrePage,goPrePage函数和goNext函数类似,首先调用setContentView函数将Activity类对应的布局资源文件切换到之前的main_activity,在绑定nextButton按钮的点击事件。

通过分析我们发现,虽然我们只有一个Activity,但是我们实现了Activity界面的动态切换,在需求比较简单的情况,这样中方案还是比较实用的。

<12>
发表评论0条 】
网友评论(共?条评论)..
Android开发实现Activity动态切换布局资源