Android App活动页面


App的活动页面

App活动页面的基本操作,首先手把手地分三步创建新的App页面,接着通过活动创建菜单快速生成页面源码,然后说明了如何在代码中跳到新的活动页面。

一,创建新的App页面

每次创建新的项目,都会生成默认的activity_main.xml和MainActivity.java,它们正是App首页对应的XML文件和Java代码。若要增加新的页面,就得由开发者自行操作了,完整的页面创建过程包括3个步骤:创建XML文件、创建Java代码、注册页面配置,分别介绍如下:

(一)创建XML文件

1.在Android Studio左上方找到项目结构图,右击res目录下面的layout,弹出如图一所示的右键菜单。
在这里插入图片描述
2.在右键菜单中依次选择New→XML→Layout XML File,弹出如下图二所示的XML创建对话框。
在这里插入图片描述
3.在XML创建对话框的Layout File Name输入框中填写XML文件名,例如activity_main2,然后单击窗口右下角的Finish按钮。之后便会在layout目录下面看到新创建的XML文件activity_main2.xml,双击它即可打开该XML的编辑窗口,再往其中填写详细的布局内容。

(二)创建Java代码

1.同样在Android Studio左上方找到项目结构图,右击java目录下面的包名,弹出如下图三所示的右键菜单。
在这里插入图片描述2.在右键菜单中依次选择New→Java Class,弹出如下图四所示的代码创建窗口。
在这里插入图片描述
3.在代码创建窗口的Name输入框中填写Java类名,例如Main2Activity,然后单击窗口下方的OK按钮。之后便会在Java包下面看到新创建的代码文件Main2Activity,双击它即可打开代码编辑窗口,再往其中填写如下代码,表示加载来自activity_main2的页面布局。

public class Main2Activity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
    }
}

(三)注册页面配置

1.创建好了页面的XML文件及其Java代码,还得在项目中注册该页面,打开AndroidManifest.xml,在application节点内部补充如下一行配置:

<activity android:name=".Main2Activity"></activity>

2.添加了上面这行配置,表示给该页面注册身份,否则App运行时打开页面会提示错误“activity not found”。如果activity的标记头与标记尾中间没有其他内容,则节点配置也可省略为下面这样:

<activity android:name=".Main2Activity /">

完成以上3个步骤后,才算创建了一个合法的新页面。

二,快速生成页面源码

上面经过创建XML文件、创建Java代码、注册页面配置3个步骤,就算创建好了一个新页面,没想到区区一个页面也这么费事,怎样才能提高开发效率呢?其实Android Studio早已集成了快速创建页面的功能,只要一个对话框就能完成所有操作。

1.仍旧在项目结构图中,右击java目录下面的包名,弹出如下图所示的右键菜单。
在这里插入图片描述2.右键菜单中依次选择New→Activity→Empty Activity,弹出如下图七所示的页面创建对话框。

在这里插入图片描述3.在页面创建对话框的Activity Name输入框中填写页面的Java类名(例如Main2Activity),此时下方的Layout Name输入框会自动填写对应的XML文件名(例如activity_main2),单击对话框右下角的Finish按钮,完成新页面的创建动作。

回到Android Studio左上方的项目结构图,发现res的layout目录下多了个activity_main2.xml,同时java目录下多了个Main2Activity,并且Main2Activity代码已经设定了加载activity_main2布局。接着打开AndroidManifest.xml,找到application节点发现多了下面这行配置:

<activity android:name=".Main2Activity"></activity>

检查结果说明,只要填写一个创建页面对话框,即可实现页面创建的3个步骤。

三,跳转到另一个页面

一旦创建好新页面,就得在合适的时候跳到该页面,假设出发页面为A,到达页面为B,那么跳转动作是从A跳到B。由于启动App会自动打开默认主页MainActivity,因此跳跃的起点理所当然在MainActivity,跳跃的终点则为目标页面的Activity。这种跳转动作翻译为Android代码,格式形如“startActivity(new Intent(源页面.this, 目标页面.class));”。如果目标页面名为Main2Activity,跳转代码便是下面这样的:

// 活动页面跳转,从MainActivity跳到Main2Activity
startActivity(new Intent(MainActivity.this, Main2Activity.class));

因为跳转动作通常发生在当前页面,也就是从当前页面跳到其他页面,所以不产生歧义的话,可以使用this指代当前页面。简化后的跳转代码如下所示:

startActivity(new Intent(this, Main2Activity.class));

接下来做个实验,准备让App启动后在首页停留3秒,3秒之后跳到新页面Main2Activity。此处的延迟处理功能,用到了Handler工具的postDelayed方法,该方法的第一个参数为待处理的Runnable任务对象,第二个参数为延迟间隔(单位为毫秒)。为此在MainActivity.java中补充以下的跳转处理代码:

@Override
protected void onResume() {
     super.onResume();
     goNextPage(); // 跳到下个页面
 }
 // 跳到下个页面
 private void goNextPage() {
    TextView tv_hello = findViewById(R.id.tv_hello);
    tv_hello.setText("3秒后进入下个页面");
    // 延迟3秒(3000毫秒)后启动任务mGoNext
    new Handler(Looper.myLooper()).postDelayed(mGoNext, 3000);
  }
  private Runnable mGoNext = new Runnable() {
    @Override
    public void run() {
        // 活动页面跳转,从MainActivity跳到Main2Activity
        startActivity(new Intent(MainActivity.this, Main2Activity.class));
    }
};

运行测试App,刚打开的App界面如图八所示,过了3秒发生跳转事件的App界面如图九所示,可见成功跳到了新页面。
在这里插入图片描述
在这里插入图片描述当然,以上的跳转代码有些复杂,比如:Intent究竟是什么东西?为何在onResume方法中执行跳转动作?Handler工具的处理机制是怎样的?带着这些疑问,后续章节将会逐渐展开,一层一层拨开Android开发的迷雾。

总结

App开发必须事先掌握的基础知识,包括App的开发特点(App的运行环境、App的开发语言、App访问的数据库)、App的工程结构(App工程的目录结构、编译配置文件build.gradle、运行配置文件AndroidManifest.xml)、App的设计规范(界面设计与代码逻辑、利用XML标记描绘应用界面、使用Java代码书写程序逻辑)、App的活动页面(创建新的App页面、快速生成页面源码、跳转到另一个页面)。
通过本此的学习,应该了解App开发的基本概念,并且熟悉App工程的组织形式,同时掌握使用Android Studio完成一些简单操作。

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁辰兴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值