Android Studio多个用户界面的程序设计(一)
(一)页面的切换
1.传递参数组件Intent:
在Android的应用程序中不管是页面切换还是传递数据或是调用外部程序都可能要用到Intent。Intent负责对应用中某次操作的动作,动作涉及的数据、附加数据进行描述,Android则根据此Intent的描述负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。因此,可以将Intent理解为不同组建之间通信的“媒介”,其专门提供租间相互调用的相关信息。
2.Activity页面的切换
Activity跳转与传递参数值主要通过Intent类协助实现。
(1)创建一个Intent对象 。
Intent intent = new Intent(当前Activity.this,另一Activity.class);
(2)调用Activity的startActivity(intent)方法,切换另一个Activity页面。
【例子】
设计一个具有两个页面的程序,第一个页面像是一张封面的图片,第二个页面显示“欢迎进入本系统,这两个页面之间能相互切换。
创建名称为homeworkch3_1的新项目。在本项目中要建立两个页面文件及两个控制文件,第一个页面的界面布局文件为activity_main.xml、控制文件为MainActicity.java,第二个页面的界面布局文件为second.xml、控制文件为secondActivity.java,还要修改配置文件AndroidMainifest.xml。
(1)设计第一个页面。
①修改第一个页面控制文件MainActivity.java,源代码如下。
package com.example.guosjia.homeworkch3_1;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.ImageView;public class MainActivity extends Activity { ImageView img; //声明对象 public void onCreate(Bundle savedInstanceState){ //重写onCreate方法 super.onCreate(savedInstanceState); //调用父类Activity的onCreate()方法 setContentView(R.layout.activity_main); //在屏幕上显示内容的方法 img=(ImageView)findViewById(R.id.img); //与布局文件的相关组建关联 img.setOnClickListener(new click()); //注册监听接口 } class click implements View.OnClickListener{ //定义一个类实现监听的接口 public void onClick(View v){ Intent intent=new Intent(MainActivity.this,second.class); //创建好之后就可以通过它启动新的Activity startActivity(intent); } }}
②第一个页面布局文件activity_main.xml如下。
<?xml version="1.0" encoding="utf-8"?>
第一个页面界面布局 (2)设计第二个页面。
①在项目中新建第2个页面的控制文件second.java。新建如下。文件名输入second.java!!!
package com.example.guosjia.homeworkch3_1;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.TextView;public class second extends Activity { TextView welcome; public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.second); welcome=(TextView)findViewById(R.id.welcome); //Bundle bundle=this.getIntent().getExtras(); welcome.setClickable(true); //因为用TextView点击,将属性改为true,点击后返回封面 welcome.setOnClickListener(new onclick()); } class onclick implements View.OnClickListener { public void onClick(View v){ Intent intent2 =new Intent(); //新建Intent对象 intent2.setClass(second.this,MainActivity.class); startActivityForResult(intent2,0); //返回前一页 } }}
②新建第二个页面的布局文件second.xml。新建如下。文件名输入second.xml!!!
<?xml version="1.0" encoding="utf-8"?>
第二个页面界面布局 (3)修改strings.xml和配置文件AndroidManifest.xml。
①strings.xml文件代码如下。
homeworkch3_1 第3章课后习题1 欢迎进入本系统
②修改AndroidMainifest.配置文件。打开项目中的AndroidManifest.xml文件,向其注册第二个Activity页面,其代码如下。
<?xml version="1.0" encoding="utf-8"?> //新增第二个Activity的注册
程序运行结果:可实现两个页面来回切换。
更多相关文章
- 深入探索Android布局优化(上)
- android运行时ART加载OAT文件解析
- 如何检测android上的多媒体文件属于音频、视频还是图片?
- android UI进阶之布局的优化(二)
- Android中的文件读写操作
- Android手机软件汉化教程---第三课 xml文件汉化