当前位置:   article > 正文

android studio示例程序MainActivity代码阅读_androidstudio中mainactivity

androidstudio中mainactivity

下面这段代码是用Kotlin语言编写的,适用于Android平台,并且使用了Jetpack Compose框架。

Jetpack Compose是一个现代的Android UI开发工具包,它可以简化和加速UI开发。

Compose在音乐领域是作曲的意思,代表是创作活动,作为UI工具包的名字,很贴切。

包声明和导入

package com.example.myapplication

import android.os.Bundle

import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent

import androidx.compose.foundation.layout.fillMaxSize

import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text

import androidx.compose.runtime.Composable

import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview

import com.example.myapplication.ui.theme.MyApplicationTheme
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

这部分声明了代码所属的包名称com.example.myapplication,并且导入了所需的类和函数。

这包括Android的Bundle,Compose的ComponentActivity和UI组件,例如TextSurface以及一些修饰符(Modifier)。

MainActivity类

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApplicationTheme {
                // A surface container using the 'background' color from the theme
                Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background) {
                    Greeting("Android")
                }
            }
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

MainActivity类继承自ComponentActivity

在这里,onCreate方法被重写,它是Android应用程序生命周期中的一个关键点,用于初始化Activity。

  • setContent是Compose中的一个核心函数,用于将Composable内容设置为Activity的UI内容。
  • MyApplicationTheme应用了定义在应用的主题文件中的样式和颜色。
  • Surface用于创建一个有颜色背景的容器,此处使用了主题中background的颜色。
  • Modifier.fillMaxSize()使得Surface充满整个屏幕。
  • 在这个Surface内部,调用了Greeting函数,并传递了一个字符串"Android"。

@Composable Greeting函数

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(
        text = "Hello $name!",
        modifier = modifier
    )
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • @Composable注解表明这是一个可组合函数,可以被Compose工具用于声明UI元素
  • Greeting函数接收一个字符串name和一个Modifier(默认为空),用于显示文本。
  • Text是一个Compose UI组件,用于在屏幕上显示文本。此处显示的文字是"Hello "和name变量的组合。

预览函数GreetingPreview

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    MyApplicationTheme {
        Greeting("Android")
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • @Preview注解使这个可组合函数能够在Android Studio的预览窗口中渲染,这有助于开发者在不运行应用程序的情况下查看UI元素的样式。
  • showBackground = true表明在预览中应当显示背景
  • 这个预览函数调用Greeting并且通过MyApplicationTheme主题应用到预览中。

在这段代码中,Greeting函数定义了一个简单的UI组件,它可以复用来显示不同的名字。

当这个应用程序运行时,屏幕上将显示带有"Hello Android!"文字的主题背景。

在Studio的设计视图中,你还可以看到这段文字的预览。

MainActivity类调用Greeting函数

GreetingPreview也是调用Greeting函数

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/698000
推荐阅读
相关标签
  

闽ICP备14008679号