SORU
9 Temmuz 2009, PERŞEMBE


Nasıl bir uygulama simgesi Android programlı olarak değiştirmek için?

Uygulama simgesi doğrudan programın içinden değiştirmek mümkün müdür?
Ben, res\drawable klasör icon.png demek değiştirin.
Kullanıcılar launcher önceden seçilen simge görecek ki, bir dahaki sefere bu kadar programı uygulama simgesini değiştirmek için izin istiyorum.

CEVAP
6 Mart 2013, ÇARŞAMBA


Bu, benim için gayet iyi çalışıyor=) deneyin

1 . Ondan androidmanifest.xml, sil MainActivity bölümü, niyet-filtre bölümünde ANA kategorisi doğrultusunda değiştirin

<activity android:name="ru.quickmessage.pa.MainActivity"
    android:configChanges="keyboardHidden|orientation"
    android:screenOrientation="portrait"
    android:label="@string/app_name"
    android:theme="@style/CustomTheme"
    android:launchMode="singleTask">
    <intent-filter>
        ==> <action android:name="android.intent.action.MAIN" /> <== Delete this line
        <category android:name="android.intent.category.LAUNCHER" />//DELETE THIS LINE
    </intent-filter>
</activity>

2 . Simgelerin her biri için ** 6, oluşturun. Bu gibi

<activity-alias android:label="@string/app_name" 
    android:icon="@drawable/icon" 
    android:name=".MainActivity-Red"
    android:enabled="false"
    android:targetActivity=".MainActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>   
</activity-alias>

3 . Set programlı: uygun etkinliği-alias . öznitelik ETKİNLEŞTİR

 getPackageManager().setComponentEnabledSetting(
        new ComponentName("ru.quickmessage.pa", "ru.quickmessage.pa.MainActivity-Red"), 
            PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);

Not, En az bir kez etkinleştirilmesi gerekir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Capcom Unity

    Capcom Unity

    5 NİSAN 2010
  • FD2097

    FD2097

    21 HAZİRAN 2009
  • Tire Rack

    Tire Rack

    31 Mayıs 2007