如何在运行时更改android应用程序名称和图标? [英] How to change android application name and icon at runtime?
问题描述
安装Android应用后,当您按下应用中的按钮时,是否可以动态更改应用图标和动态名称(在运行时)?
After installing an android app, is it possible to change app icon and name dynamically(at runtime) when you press a button in the app?
这是迄今为止的代码..
This is the code so far..,
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>
当我运行此代码时,首先会出现第一个图标(在抽屉中,还有在操作栏中)然后在关闭应用程序并重新运行该应用程序后,它将切换到另一个图标。
When I run this code, initially first icon will appear (in drawer and also in action bar) and then after I close the app and re-run it, it will switch to the other icon.
我想要做的是将此过程分配给按钮,是如果我只按那个按钮,图标会改变,否则不行。
如何实现这个?
What I want to do is, assign this procedure to a button, that is if I only press that button, icon will change, otherwise no. How can I achieve this??
推荐答案
现在,您可以使用PackageManager更改活动创建一个按钮并将代码放在OnClick中。
Now that you're able to change the activity using PackageManager, just Create a button and put the code in it's OnClick.
如果这样工作,那么应该这样。
If this is working, so should that.
这篇关于如何在运行时更改android应用程序名称和图标?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!