Android:了解应用程序启动时活动的开始方式

时间:2014-08-20 11:25:13

标签: android

我已经粘贴了Androidmanifest.xml的代码,android如何决定在应用程序启动时启动哪个活动?在这种情况下,它的主要活动。如果我想在应用程序启动时启动AnotherActivity,我需要做哪些更改?

 <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.example.AnotherActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

4 个答案:

答案 0 :(得分:3)

MAIN元素指定这是&#34; main&#34;申请入口点。 LAUNCHER元素指定此活动应列在系统的应用程序启动器中(以允许用户启动此活动)。

<activity
        android:name="com.example.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

只需从下一个活动中移除意图过滤器!!

答案 1 :(得分:1)

当用户从主屏幕中选择您的应用程序图标时,系统会为您声明为“启动器”(或“主”)活动的应用中的活动调用onCreate()方法。这是活动,作为应用用户界面的主要入口点。

您可以在Android清单文件AndroidManifest.xml中定义要用作主要活动的活动,该文件位于项目目录的根目录。

您的应用的主要活动必须在清单中声明,其中包含MAIN操作和LAUNCHER类别。例如:

<activity android:name=".MainActivity" android:label="@string/app_name">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

基于此,我们可以得出结论,您目前的配置有误。只有一个活动可以为Main设置Intent过滤器(因此,如果您想在“Home”活动中使用AnotherActivity,则应从.MainActivity中删除<intent-filter>

答案 2 :(得分:0)

 <activity
        android:name="com.example.AnotherActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

     <activity android:name="MainActivity" ></activity>

答案 3 :(得分:0)

如我们的对话中所述,您希望在启动时显示确定的操作,具有自己的功能和布局。解决方案是使用一个 Activity根据您的情况使Fragment1Fragment2充气。

处理Fragment非常困难,但是当你掌握它们时,你会玩得很开心。网上关于Fragment的例子很少,但我告诉你:阅读和练习是你学习东西的唯一方法。从其他源代码/示例复制和粘贴对您没有帮助。请点击此链接:

祝你好运!