CODE函数-英雄云拓展知识分享
177
2023-10-25
【摘要】 本书摘自《基于Kotlin的Android应用程序开发》一书中第3章,第1节,由薛岗编著。
3.1.3 定义新窗体
在 Android Studio系 统 菜 单 “File” 中 选 择 “New” ( 新 建 ) 项 , 然 后 选 择 “Activity” 项 , 再
单 击 "Empty Activity"。开发环境进入新建窗体向导。在向导中,设置 Activity 名 字(Activity Name)
为 InfoActivity, 布局文件名称会自动变更,结束窗体新建向导(注意确保向导中"Source Language"
项 的 值 为 Kotlin)。
InfoActivity 的 布 局 文 件 为 activity info.xml。 默 认 情 况 下 ,activity info.xml 只 包 含 XML 文 档 声 明 和 一 个XML 根 标 签 ( 该 标 签 名 为 android.support.constraint.ConstraintLayout)。 在 根 标 签 内 部
增 加 一 个TextView 组 件 , 设 置 组 件 大 小 和 唯 一 标 识 ( 标 识 为 info), 相 关 程 序 如 下 :
1 android:layout width="match parent" android:layout height="match parent"/> 在开发环境中,单击查看主配置文件 AndroidManifest.xml。 文 件 包 含 以 下 内 容 : 1 version="1.0"encoding="utf-8"?> xmlns:android="http://schemas.android.com/apk/res/android" package="com.myappdemos.devices"> android:allowBackup="true" android:icon="Cmipmap/ic launcher" android:label="@string/app name" android:roundIcon="Cmipmap/ic launcher round" android:supportsRtl="true" android:theme="@style/AppTheme"> 15 16 18 19 与3.1.1节中的配置文件相比,程序第17行为新增内容,该行程序是InfoActivity 组件的一个 记录项。 Andorid 应用中,每个被使用的 Activity 组件都会在 AndroidManifest.xml 中被记录。程 序实现中,Android Studio会自动完成配置文件相关的维护和记录工作。 当前项目中已定义了两个窗体,分别为: MainActivity和 InfoActivity。应用程序开始运行时, 系统会启动和显示 MainActivity 对象。为了能够启动并显示 InfoActivity对象,可在 MainActivity 类的listDevices方法中增加相应的程序代码。 Android 应用程序中,不同 Activity 对象之间基于Intent 对象进行通信(或消息传递),与通 信相关的消息需要被封装在Intent对象中;另外,Intent对象可用于启动并显示一个 Activity 对象。 基于Intent,MainActivity类的 listDevices方法可实现为: 1 fun listDevices(view: View){ val intent Intent(this, InfoActivity::class.java) startActivity(intent) 上述程序中,第2行声明一个Intent实例。Intent初始化需要两个参数:①Context实例;② Activity对象。其中,参数①用于说明当前发送 Intent对象的技术环境;参数②用于指定 Intent对 象的接收者。程序第2行中,第1个参数this指代 MainActivity 对象,也就是 Intent对象的发送 方,第2个参数Intent对象的接收者,记为 InfoActivity::class.java。第3行程序用于发送 Intent对 象,该语句执行时会启动 Intent 对象的接收者。startActivity 方法是 Activity 类的一个成员函数, 该方法可以基于Intent对象启动一个新的 Activity类对象。 编译运行程序,Devices(版本2)运行效果如图3.3所示。当在MainActivity实例中单击“SHOW DEVICES” 按钮, InfoActivity实例会启动并显示。现阶段,程序运行的基本过程为:程序启动, MainActivity 类被初始化并显示;界面中的下 拉列表会根据用户的操作而更新界面显示;当用户单击界面中的按钮时,程序初始化一个 Intent 对象,并发送给运行环境(即 Android 平台);运行环境根据 Intent 对象中的信息初始化并启动 InfoActiviy。 版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~