Ikon Aplikasi Alternatif di Xamarin.iOS
Artikel ini membahas penggunaan ikon aplikasi alternatif di Xamarin.iOS.
Apple telah menambahkan beberapa penyempurnaan ke iOS 10.3 yang memungkinkan app mengelola ikonnya:
ApplicationIconBadgeNumber
- Mendapatkan atau mengatur lencana ikon aplikasi di Springboard.SupportsAlternateIcons
- Jikatrue
aplikasi memiliki sekumpulan ikon alternatif.AlternateIconName
- Mengembalikan nama ikon alternatif yang saat ini dipilih ataunull
jika menggunakan ikon utama.SetAlternameIconName
- Gunakan metode ini untuk mengalihkan ikon aplikasi ke ikon alternatif yang diberikan.
Menambahkan Ikon Alternatif ke Proyek Xamarin.iOS
Untuk mengizinkan aplikasi beralih ke ikon alternatif, kumpulan gambar ikon harus disertakan dalam proyek aplikasi Xamarin.iOS. Gambar-gambar ini tidak dapat ditambahkan ke proyek menggunakan metode umumAssets.xcassets
, mereka harus ditambahkan ke folder Sumber Daya secara langsung.
Lakukan:
Pilih gambar ikon yang diperlukan dalam folder, pilih semua dan seret ke folder Sumber Daya di Penjelajah Solusi:
Saat diminta, pilih Salin, Gunakan tindakan yang sama untuk semua file yang dipilih dan klik tombol OK :
Folder Sumber Daya akan terlihat seperti berikut ini ketika selesai:
Memodifikasi File Info.plist
Dengan gambar yang diperlukan ditambahkan ke folder Sumber Daya, kunci CFBundleAlternateIcons perlu ditambahkan ke file Info.plist proyek. Kunci ini akan menentukan nama ikon baru dan gambar yang menyusunnya.
Lakukan:
- Di Penjelajah Solusi, klik dua kali file Info.plist untuk membukanya untuk pengeditan.
- Beralih ke tampilan Sumber .
- Tambahkan kunci ikon Bundel dan biarkan Jenis diatur ke Kamus.
CFBundleAlternateIcons
Tambahkan kunci dan atur Jenis ke Kamus.AppIcon2
Tambahkan kunci dan atur Jenis ke Kamus. Ini akan menjadi nama kumpulan ikon aplikasi alternatif baru.CFBundleIconFiles
Menambahkan kunci dan mengatur Jenis ke Array- Tambahkan string baru ke
CFBundleIconFiles
array untuk setiap file ikon yang meninggalkan ekstensi dan@2x
akhiran , ,@3x
dll. (contoh100_icon
). Ulangi langkah ini untuk setiap file yang membentuk kumpulan ikon alternatif. UIPrerenderedIcon
Tambahkan kunci keAppIcon2
kamus, atur Jenis ke Boolean dan nilai ke Tidak.- Simpan perubahan pada file.
File Info.plist yang dihasilkan akan terlihat seperti berikut ini ketika selesai:
Atau seperti ini jika dibuka di editor teks:
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>AppIcon2</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>100_icon</string>
<string>114_icon</string>
<string>120_icon</string>
<string>144_icon</string>
<string>152_icon</string>
<string>167_icon</string>
<string>180_icon</string>
<string>29_icon</string>
<string>40_icon</string>
<string>50_icon</string>
<string>512_icon</string>
<string>57_icon</string>
<string>58_icon</string>
<string>72_icon</string>
<string>76_icon</string>
<string>80_icon</string>
<string>87_icon</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
</dict>
</dict>
Mengelola Ikon Aplikasi
Dengan gambar ikon yang disertakan dalam proyek Xamarin.iOS dan file Info.plist dikonfigurasi dengan benar, pengembang dapat menggunakan salah satu dari banyak fitur baru yang ditambahkan ke iOS 10.3 untuk mengontrol ikon aplikasi.
Properti SupportsAlternateIcons
UIApplication
kelas memungkinkan pengembang untuk melihat apakah aplikasi mendukung ikon alternatif. Contohnya:
// Can the app select a different icon?
PrimaryIconButton.Enabled = UIApplication.SharedApplication.SupportsAlternateIcons;
AlternateIconButton.Enabled = UIApplication.SharedApplication.SupportsAlternateIcons;
Properti ApplicationIconBadgeNumber
UIApplication
kelas memungkinkan pengembang untuk mendapatkan atau mengatur nomor lencana ikon aplikasi saat ini di Springboard. Nilai defaultnya adalah nol (0). Contohnya:
// Set the badge number to 1
UIApplication.SharedApplication.ApplicationIconBadgeNumber = 1;
Properti AlternateIconName
UIApplication
kelas memungkinkan pengembang untuk mendapatkan nama ikon aplikasi alternatif yang saat ini dipilih atau ditampilkan null
jika aplikasi menggunakan Ikon Utama. Contohnya:
// Get the name of the currently selected alternate
// icon set
var name = UIApplication.SharedApplication.AlternateIconName;
if (name != null ) {
// Do something with the name
}
Properti SetAlternameIconName
UIApplication
kelas memungkinkan pengembang untuk mengubah ikon aplikasi. Teruskan nama ikon untuk memilih atau null
kembali ke ikon utama. Contohnya:
partial void UsePrimaryIcon (Foundation.NSObject sender)
{
UIApplication.SharedApplication.SetAlternateIconName (null, (err) => {
Console.WriteLine ("Set Primary Icon: {0}", err);
});
}
partial void UseAlternateIcon (Foundation.NSObject sender)
{
UIApplication.SharedApplication.SetAlternateIconName ("AppIcon2", (err) => {
Console.WriteLine ("Set Alternate Icon: {0}", err);
});
}
Saat aplikasi dijalankan dan pengguna memilih ikon alternatif, pemberitahuan seperti berikut ini akan ditampilkan:
Jika pengguna beralih kembali ke ikon utama, pemberitahuan seperti berikut ini akan ditampilkan:
Ringkasan
Artikel ini telah membahas penambahan ikon aplikasi alternatif ke proyek Xamarin.iOS dan menggunakannya di dalam aplikasi.