如何将我的Activity设置为android中的主要活动?

问题描述:

我想创建自己的活动作为主要活动,而不是使用默认MainActivity如何将我的Activity设置为android中的主要活动?

我该如何在android清单中定义?

在内部应用程序标记AndroidManifest.xml文件添加活动标签,并删除旧的活动代码行动主要设置为默认

<application...... > 
    <activity 
     android:name=".DefaultActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.DEFAULT" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".NewActivity" 
     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> 
+0

main和default有什么用处;并解释两者的不同之处 – Sathish 2012-03-15 13:52:02

+0

“主要”活动是首先加载和应用程序其余部分的活动。每个应用程序可以有多个活动,因此您可以列出其他活动以便稍后加载和使用,但只能有一个“主要”活动。 – 2012-03-31 02:44:26

很简单。在您的Android清单文件中添加,

<activity 
    android:name="Your Activity Name" 
    android:label="@string/app_name" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.HOME" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

在你的清单文件,使用下面的代码申报的活动作为一个启动活动:

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

从Android开发者文档:

ACTION_MAIN活动:作为任务的初始活动启动,没有数据输入且没有返回输出。

CATEGORY_LAUNCHER:活动可以是任务的初始活动,并列在顶层应用程序启动器中。

Xamarin,你可以在上面的类定义添加MainLauncher = true这样的:

[Activity(Label = "UserActivity", MainLauncher = true)] 
public class UserActivity : ListActivity 
+0

@Sanan Pandeya很酷,谢谢! – ManuQiao 2017-09-19 03:27:53

可以在清单文件中使用:

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

这是非常重要的:

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