Android APP 开发 -- 创建第一个 APP

关键字 :Android
Android APP 使用 Google 官方提供的开发工具 Android Studio 来完成开发,下载地址如下:Android Studio


在开发前需要了解的是:

1. Activity 是提供界面 (UI) 的一种应用组件,显示在手机屏幕上的整个页面就是 Activity
2. View 是页面中的视图元素,Activity 中的每一个视图元素(按钮,文字)都是一个 View

1. 项目的创建

1. 启动 Android Studio,出现如下页面,选择 Start Android Studio New Project 按钮创建新的 APP

1. 填写 APP 的相关信息,如图所示。需要注意的部分有
- Language,表示开发所用语言,这里选择的是 kotlin
- Minimun API level,表示的是 APP 所支持的最低 Android 系统,这里选择的是 Android 6.0 系统




2. 点击 Finish 后,等待项目初始化后,此时目录结构如图所示





2. 创建 APP 主页

可以看出目录下有两个文件,一个是 MainActivity ,一个是 activity_main.xml 文件,前者就如一开始所提到的 Activity,它就是手机屏幕上所显示的整个页面。


MainActivity 文件代码如下,这里的 onCreate 方法,是每一个 Activity 都拥有的,可以在这里指定该页面的视图元素布局。可以看出,它所使用的就是 activity_main.xml 文件。通过这个方法,可以将视图元素显示在页面中。


class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}

activity_main.xml 文件其代码如下所示,可以看出,该文件中就是对应的上述提到的 View,也就是在页面中所显示的视图元素


xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />




该代码中的 TextView 是一个文字的视图元素,用来显示文字。


最终的 APP 主页效果如图




图中白色部分就是页面(Activity)的大小,而在中间的 Hello World 文字则对应的是代码中的 TextView。


视图元素除了 TextView 外还有许多,这里以 Button 为例,我们将 activity_main.xml 代码修改成如下所示



xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:id="@+id/text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />


<Button
android:layout_width="wrap_content"

android:layout_height="wrap_content"
android:text="测试用按钮"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/text"/>




也就是添加了 Button 视图元素,此时的 APP 主页效果如图



按照这种方式,就能够将视图元素显示在 APP 的页面上

3. 页面跳转

正如平常所使用的 APP 一样,不会只有一个页面。所以每个 APP 都会有多个页面,也就是多个 Activity。创建新的 Activity 的方法如图



在创建完成后,项目的目录结构如下,多出了一个 Activity 和一个 xml 文件,两者是对应的,因为每一个 Activity 都需要一个 xml 文件来确定页面的中的视图元素。



按照同样的方式设置好第二个 Activity 页面的视图布局,最终该页面的显示如下




而对于如何从首页跳转第二个页面,可以通过 Android 系统提供的 startActivity 方法来完成,通常来说,在点击按钮后,都会跳转到第二个页面,所以我们可以在第一个页面中,对按钮设置点击监听,在点击按钮后,执行 startActivity 方法,即可跳转成功。代码如下



class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
btn.setOnClickListener {
startActivity(Intent(this,SecondActivity::class.java))
}
}
}


再次启动 app,点击按钮,就可以从第一个页面跳转至第二个页面


4. 页面之间传递数据


在上述的代码中,有使用到 Intent,这是 Android 所提供的组件通信类,能够在两个不同页面间传递数据,代码如下。


在这里,可以尝试通过 Intent 将第一个页面的数据传递到第二个页面中,并以文字形式展示出来



class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
btn.setOnClickListener {
val intent = Intent(this,SecondActivity::class.java)
intent.putExtra("test","这是传递过来的数据")
startActivity(intent)
}
}
}


在 intent 中放入了字符串 “这是传递过来的数据” ,并且通过 startActivity 方法传递到下一个 Activity 中



class SecondActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_second)
intent.getStringExtra("test")?.let {
textView.text = it
}
}
}


在 SecondActivity 中,则是将 intent 中的值取出,并且设置为 TextView 的显示文字,最终效果如下




除了能传递字符串类型外,intent 也能够传递整型,布尔值以及可序列化数据



 5. 总结

通过了解到布局文件的编写,页面跳转的使用,视图元素的事件监听,页面之间的数据传递,就可以完成一个简单的 APP 开发。在后续的教程中,还会学习到 Activity 的生命周期以及其他类型 View 的使用。



参考资料


1. Google Android 开发者指南

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论