我应该在android清单中编写每个活动吗?每个活动必须有意图过滤吗?
答案 0 :(得分:28)
在Manifest文件中添加活动的多种方法。
意图过滤器不是所有活动的必要标记,它是可选的。
在清单中的应用程序标记中添加活动:
<!-- Main Activity-->
<activity android:name=".YourActivityName" >
<intent-filter>
<!-- MAIN represents that it is the Main Activity-->
<action android:name="android.intent.action.MAIN" />
<!-- Launcher Denotes that it will be the first launching activity-->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!--Add Other activities like this-->
<activity android:name=".YourActivityName2" >
<!--Default Intent Filter-->
<intent-filter>
<action android:name="android.intent.action.DEFAULT" />
</intent-filter>
</activity>
<!--OR Other activities like this And intent filter is not necessary in other activites-->
<activity android:name=".YourActivityName3" >
</activity>
<!--OR Add Other activities like this-->
<activity android:name=".YourActivityName4" />
答案 1 :(得分:3)
你必须提及android清单中的每个活动。
并非所有活动都需要意图过滤。 intent过滤器显示何时启动此活动。 通常,您将拥有一个带有intent过滤器的活动,以表明它是启动应用程序时的第一个活动。
清单中的应用内标记:
<activity android:name="ActivtyName" >
</activity>
<activity android:name="ActivtyName2" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
答案 2 :(得分:3)
必须在
内提及一项活动<activity>
...
</activity>
标签。每个活动标签都必须在
内部指定<application>
...
</application>
标签。
默认活动必须具有
<intent-filter>
...
</intent-filter>
标签,它将使android系统了解该活动将在应用启动时被调用。
A可以包含多个属性,但是只有name属性是必需的。
以下为完整列表:https://developer.android.com/guide/topics/manifest/activity-element
默认活动代码:
<activity
android:name=".LoginActivity"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
其他活动标签:
<activity
android:name=".SelectSubjectActivity"
android:windowSoftInputMode="adjustResize" />
答案 3 :(得分:1)
只需要android:name="ActivtyName"
。
答案 4 :(得分:1)
如果您正在使用Eclipse ADT,那么在创建新的Activity而不是创建类时,请从New&gt;创建一个Activity。其他......这样ADT会自动将您的活动添加到Manifest。
答案 5 :(得分:-1)
您必须在清单中为每个活动编写条目,并且不需要任何意图过滤器。你可以写下这个:
<activity
android:name="com.example.chatter.List"
android:label="@string/title_activity_list" >
</activity>