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

  • LearnKey

    LearnKey

    19 AĞUSTOS 2008
  • Maschine Tutorials

    Maschine Tut

    15 ŞUBAT 2011
  • MotoManTV

    MotoManTV

    10 Aralık 2009