我是Android的新手,也是我在这个网站上的第一个问题,所以如果弄错了,请告诉我。 有些教程说,我很困惑
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
这是该计划的开始。
其他人说当用户点击
时,程序从onCreate()方法开始 在主屏幕上的app图标中调用onCreate()方法。我想onCreate
这里的方法就像启动图标的监听器一样。
我的问题
1)如果onCreate首先调用了什么是使用MAIN和LAUNCHER?`
2)如果MAIN和LAUNCHER是打电话给onCreate mehtod的起点?
我的问题不是重复this question我的问题是谁是android程序的起点,如果它是.MAIN谁调用onCreate()方法?
答案 0 :(得分:2)
的意图过滤器
<action android:name="android.intent.action.MAIN" />
表示活动是作为您应用的主要方法而创建的#34;。我相信你只能宣布其中一个。
另一个意图过滤器
<category android:name="android.intent.category.LAUNCHER" />
告诉启动器在应用程序抽屉,主屏幕等中显示带有android:label
属性名称的图标。您可以在清单中将多个这些内容直接转到其他活动。
要回答您的问题,onCreate
并不是活动的起点。活动按Android Lifecycle的顺序运行,因此onCreate
不会首先调用&#34;。这是您第一次有机会致电setContentView()
来扩充您的布局。
至于谁或什么启动Activity,您,用户,单击应用程序图标,Launcher会向您的应用程序发送android.intent.action.MAIN
Intent,Manifest将会看到并启动相应的Activity。