Day6 Android启动过程

如何设置启动页

swift 复制代码
Android 通过AndroidManifest.xml声明
AndroidManifest.xml:
  <activity
      android:name=".MainActivity"
      android:exported="true">
      <intent-filter>
          <action android:name="android.intent.action.MAIN" /> 👈 这是入标记
          <category android:name="android.intent.category.LAUNCHER" />  
      </intent-filter>
  </activity>
  
  Swift
  // AppDelegate.swift
  func application(_ application: UIApplication, 
                  didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
      window = UIWindow(frame: UIScreen.main.bounds)
      window?.rootViewController = MainViewController()  // 👈 代码设置
      window?.makeKeyAndVisible()
      
      return true
  }
  

生命周期回调

scss 复制代码
Android 通过Activity 来展示一个页面,一个Activity的完整生命周期是:
onCreate()   视图创建时调用
onStart()    界面即将显示
onResume()   界面已显示(获得焦点)
onPause()    界面即将消失
onDestroy()  视图销毁

Swift 通过ViewController来展示页面
viewDidLoad()
viewWillAppear()
viewDidAppear()
viewWillDisappear()
deinit / viewDidUnload()

onCreate方法解析

scss 复制代码
override fun onCreate(savedInstanceState: Bundle?) {
     super.onCreate(savedInstanceState)        // 👈 1. 调用父类方法(必须)
      enableEdgeToEdge()                        // 👈 2. 你调用的方法
      setContent {                              // 👈 3. 你调用的方法
          // ...
      }
  }
### enableEdgeToEdge()
作用:让应用内容延伸到屏幕边缘(包括状态栏和导航栏区域)
不调用:内容从状态栏下方开始
Swift 
viewController.modalPresentationStyle = .fullScreen

### setContent()
作用设置Acticity的界面内容(使用Jetpack Compose)
Swift
view.addSubview(hostingController.view)
相关推荐
shuangrenlong4 小时前
android studio突然一直importing卡住
android·ide·android studio
大黄说说8 小时前
匹配表达式 vs. Switch语句:现代PHP中的条件逻辑重构
android·ide·android studio
我命由我123458 小时前
Kotlin 开发 - 双冒号操作符(引用顶层函数、引用成员函数、引用构造函数、引用属性、引用类)
android·java·开发语言·kotlin·android studio·android jetpack·android-studio
我命由我123459 小时前
Kotlin 开发 - sealed 关键字
android·java-ee·kotlin·android studio·android jetpack·android-studio·android runtime
我命由我123451 天前
Java 开发 - CountDownLatch 不需要手动关闭
android·java·开发语言·jvm·kotlin·android studio·android-studio
我命由我123451 天前
Android 广播 - 显式广播与隐式广播
android·java·开发语言·java-ee·kotlin·android studio·android-studio
小妖6661 天前
android studio安装中文语言插件
android·ide·android studio
我命由我123451 天前
Android 开发问题:Raw use of parameterized class ‘Class‘
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
灵魂学者2 天前
使用 Android Studio 进行 HbuilderX H5+App 离线打包
android·ide·android studio·hbuilderx·apk build
a2591748032-随心所记3 天前
android studio gradle快速编译配置
android·android studio