Activity是什么? 1.Activity是一种可以包含用户界面的组件,可以和用户进行交互; 2.一个应用程序中可以包含零个或多个Activity; 3.Activity = 用户界面组件 + 业务逻辑(功能)组件. 如何创建一个Acticity?
右键项目的任何包路径→New→Activity→Empty Activity,会弹出一个创建Activity的对话框,如下图所示。 注:勾选Generate Layout File表示会自动为FirstActivity创建一个对应的布局文件; 勾选Launcher Activity表示会自动将FirstActivity设置为当前项目的主Activity; 勾选Backwards Compatibility表示会为项目启用向下兼容旧版系统的模式。然后,点击“Finish”完成创建。 Android程序的设计讲究逻辑和视图分离,最好每一个Activity都能对应一个布局。 右击app/src/main/res/layout→New→Directory,可以创建一个布局文件,这里创建一个first_layout.xml文件,在该布局中添加了一个button按钮,相关代码如下:
< LinearLayout xmlns: android= "http://schemas.android.com/apk/res/android"
android: orientation= "vertical"
android: layout_width= "match_parent"
android: layout_height= "match_parent" >
< Button
android: id= "@+id/button1"
android: layout_width= "match_parent"
android: layout_height= "wrap_content"
android: text= “Button 1 ” / >
< / LinearLayout>
回到FirstActivity,在onCreate()方法中加入setContentView方法,即可给当前的Activity加载一个布局,相关代码如下:
class FirstActivity : AppCompatActivity ( ) {
override fun onCreate ( savedInstanceState: Bundle? ) {
super . onCreate ( savedInstanceState)
setContentView ( R. layout. first_layout)
}
}
所有的Activity都要在AndroidManifest.xml 中进行注册才能生效。 Activity的注册声明要放在标签内,并通过标签来对Activity进行注册,也可以在标签的内部加入标签来配置主Activity。相关代码如下:
< manifest xmlns: android= "http://schemas.android.com/apk/res/android"
package = "com.example.activitytest" >
< application …>
< activity android: name= ".FirstActivity" android: label= "This is FirstActivity" >
< intent- filter>
< action android: name= "android.intent.action.MAIN" / >
< category android: name= "android.intent.category.LAUNCHER" / >
< / intent- filter>
< / activity>
< / application>
< / manifest>