安装Android应用程序后,当您按下应用程序中的按钮时,是否可以动态更改应用程序图标和名称(在运行时)?
这是到目前为止的代码..,
getPackageManager().setComponentEnabledSetting(
new ComponentName("com.example.badgemaste", "com.example.badgemaste.MainActivity"),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
try {
getPackageManager().setComponentEnabledSetting(
new ComponentName("com.example.badgemaste", "com.example.badgemaste.MainActivity-One"),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
} catch (Exception e) {
//handle
}
在清单文件中......
<application
android:allowBackup="false"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name2"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.badgemaste.MainActivity"
android:label="@string/app_name"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity-alias
android:icon="@drawable/ic_laun"
android:label="@string/app_name"
android:name="com.example.badgemaste.MainActivity-One"
android:enabled="true"
android:targetActivity="com.example.badgemaste.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>
当我运行此代码时,最初会出现第一个图标(在抽屉中,也在操作栏中),然后在我关闭应用程序并重新运行它之后,它将切换到另一个图标。
我想要做的是,将此程序分配给一个按钮,即如果我只按下该按钮,图标将会改变,否则不会。 我怎么能实现这个?
答案 0 :(得分:3)
现在您可以使用PackageManager更改活动,只需创建一个按钮并将代码放入OnClick中。
如果这样做,那就应该这样。