내 애플리케이션에 스위치가 있습니다. 스위치가 on
인 경우 하나의 다른 아이콘을 설정하고 싶습니다. 스위치가 off
인 경우 다른 아이콘을 설정해야합니다.안드로이드에서 전환 값에 따라 애플리케이션 아이콘을 변경하는 방법
나는이
tButton.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
if (isChecked)
{
tvStateofToggleButton.setText("ON");
getPackageManager().setComponentEnabledSetting(
new ComponentName("com.samir", "com.samir.MainActivity-Red"),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
} else
{
tvStateofToggleButton.setText("OFF");
getPackageManager().setComponentEnabledSetting(
new ComponentName("com.samir", "com.samir.MainActivity-Blue"),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
}
}
});
매니페스트 같은 노력하고는
[2013-11-09 13:03:40 - Android Switch Button] ActivityManager: Error type 3
[2013-11-09 13:03:40 - Android Switch Button] ActivityManager: Error: Activity class {com.samir/com.samir.MainActivity-Red} does not exist.
이 하나가 나에게 올바른 접근 방식을 제안 할 수 콘솔은 다음과 같이 표시
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.samir"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:launchMode="singleTask" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<activity-alias
android:name=".MainActivity-Red"
android:enabled="false"
android:icon="@drawable/red"
android:label="@string/app_name"
android:targetActivity=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
<activity-alias
android:name=".MainActivity-Blue"
android:enabled="false"
android:icon="@drawable/blue"
android:label="@string/app_name"
android:targetActivity=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>
</manifest>
입니다
홈 페이지에 표시되는대로 앱 아이콘을 변경하려고합니까? –
@GilMoshayof 예 그렇게하려고합니다. – Gajini