安卓开发复习笔记(二)

 

探究活动中的要素:

活动(Activity):包含用户界面的组件,主要用于和用户进行交互。

 

• 手动创建活动

勾选 Generate Layout File 表示会自动为FirstActivity创建一个对应的布局文件。

勾选 Launcher Activity 表示会自动将FirstActivity设置为当前项目的主活动。

勾选 Backwards Compatibility 表示会为项目启用向下兼容的模式,这个要勾选。

 

创建好之后千万不要忘记!所有新创建的活动都要在Manifest中注册才能生效!

我这里配置了两个Activity,MainActivity作为主活动。

 

首先我们需要在MainActivity文件中将按键实例,我们经常使用 findViewById() 的方法获取到布局文件中定义的元素

通过传入按键的id值(上面通过android:id定义的id值)即可返回一个View对象,我们需要向下转型将它转成Button对象

,我们需要通过 setOnClickListener() 的方法为按钮注册一个监听器

点击按钮就会执行监听器方法中的 onClick() 方法。

 

 

下面我们用按键触发一个Toast。

• 活动中创建Toast

非常好的提醒方式,这些信息会在一段时间后消失,并不会占用任何屏幕空间。

首先需要定义一个Toast 的触发点,就通过上面的按钮触发吧。

通过静态方法 makeText() 创建出一个Toast对象,然后用 show() 将Toast显示出来就好了

makeText() 传入三个参数:

Context

     也就是Toast要求的上下文,由于活动本身就是一个Context对象,这里直接传入FirstActivity.this 即可。

显示的文本内容 

Toast显示的时长

     系统给出了两个内置常量:Toast.LENGTH_SHORT , Toast.LENGTH_LONG

 

•在活动中使用 Menu

手机和电脑不同,由于它的屏幕空间有限,因此充分利用屏幕中的空间就显得格外重要了。

那么我们在res目录下新建一个名为menu的新文件夹。

然后在menu文件夹下新建一个Menu resourse file。

创建好之后会出现main.xml文件,我们在里面增添两个item

这里我们创建两个菜单项,

android:id 是这个菜单项的唯一标识符

android:title 是这个菜单项指定的一个显示名称。

 

接下来我们要回到活动中重写菜单中的两个item的创建方法

我们用的是 onCreateOptionsMenu() 方法

函数返回值是boolean, 调取一个Menu参数。

通过getMenuIflater() 的方法能够得到 Menuinflater 对象,在调用它的 inflater()  方法,即可给当前活动创建菜单了。

 

当然,仅仅让菜单显示出来是不够的,定义菜单不仅仅是为了看,关键是菜单要有功能才行。

因此还要定义菜单响应事件。

我们要在活动中重写 onOptionsItemSeleted() 方法

函数返回值是boolean, 调取一个MenuItem参数。

Menu就写好了。

运行效果:

 

• 销毁一个活动,Destroy it~~

正常我们日常安卓手机操作时按一下Back键即可完成这个销毁动作

如果是在游戏中,或者其他种种情况,我们需要一个按键来实现销毁。

我们就会使用 finish() 这个方法,该方法是Activity类提供的

 

• 在活动之间切换

1.使用显式Intent

首先我们创建一个新活动。

修改旧活动的点击事件,代码如下

Intent 是Android程序各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的操作,还可以在不同组件之间传递数据

Intent 一般可以被用在启动活动,启动服务以及发送广播等场景。

Intent有多个构造函数的重载,其中一个是Intent ( Context package Context, Class <?> cls )

这个构造函数接收两个参数:

第一个参数Context要求提供一个启动活动的上下文。

第二个参数Class则是指定想要启动的活动的目标。

 

这样我们就创造了这样一个“Intent”(意图)。

那么我们接下来怎么把这个意图实现呢。

Activity类中提供了一个 startAcitivity() 方法,这个方法是专门用于启动活动的,它接收一个Intent参数,即可启动。

 

2.隐式Intent

以后有机会再学习介绍

 

• 向下一个活动传递数据

Intent还有启动活动时传递数据的作用

Intent中提供了一系列 putExtra() 方法的重载,可以把我们想要传递的数据暂存在Intent中。

启动另一个活动时,把数据从Intent中再取出来就可以了

那么FirstActivity的按键监听中:

SecondActivity中:

得到调试信息:

所以,注意这里使用到的三个方法:

1. putExtra() 方法接收两个参数:第一个是键,用于后面的Intent取值,第二个参数该是真正要传递的数据。

2. getIntent() 方法用于获取到启动本活动的Intent。

3. getStringExtra() 方法,是intent类的方法,输入键值参数即可调取数据。

 

• 返回数据给上一个活动

与上面不同的是返回上一个活动只需要按一下Back键就可以了

 

posted @ 2019-09-02 12:58  高物终结者  阅读(221)  评论(0)    收藏  举报