[TUT] [JB] BAGAIMANA MEREKA SystemUI.apk untuk benar-benar newbie
Halo komunitas
Saya ingin berbagi sesuatu yang saya tahu tentang bagaimana tema untuk kebanyakan SystemUI.apk.
Apa di TUT ini ??
HALAMAN 1 :
1. Alat Tema yang dibutuhkan.
2. LANGKAH-LANGKAH untuk membuat tema.
3. BAGAIMANA MENGUBAH WARNA UNTUK TEKS.
4. CARA MEMBUAT INCREMENT BATERAI 1%.
5. BAGAIMANA MEMBUAT JAM PUSAT.
6. BAGAIMANA MENGEMBALIKAN TOGGLE.
7. BAGAIMANA MENGHAPUS BAR BRIGHTNESS.
8. BAGAIMANA MENGUBAH STATUS BAR LATAR BELAKANG.
9. BAGAIMANA MEMBUAT TOMBOL BUTTON DAN NOTIFIKASI.
10. BAGAIMANA MEMBUAT LATAR BELAKANG TRANSPARAN.
HALAMAN 2 :
11. BAGAIMANA MENGHAPUS STATUS TEKS DAN TOGGLES.
12. BAGAIMANA CARA MENG EDIT GAMBAR TANPA MENDAPATKAN KESALAHAN!
13. sample_toggles untuk semua!
14. BAGAIMANA MENGUBAH SETIAP BAGIAN DENGAN CITRA.
15. Cara Menandatangani Apk Setelah Modding!
TUT BERDASARKAN ORANG LAIN:
- CARA MOVE TOGGLES KE BOTTOM, CARA MOVE BATTERY ICON UNTUK KIRI, CARA MENDAFTARKAN AM / PM DI STATUS BAR. Oleh @ SuperDroid-BOND
- CARA MENAMBAHKAN TOMBOL SCREENSHOT DI STATUSBAR. Oleh @ remuntada78
Kutipan:
1. Alat Tema yang dibutuhkan:
- Apktool (download Jar dan aapt) [hanya untuk Windows] berkat iBotPeaches untuk alat ini.
- Android Utility [hanya untuk MAC / LINUX] berkat tommytomatoe untuk alat ini.
- Lebih baik Draw9Patch (Untuk mengedit .9patch png) berkat AndroidGraphix untuk alat ini.
- pembaca .xml yang bagus (saya lebih suka Notepad ++).
- editor gambar bagus (saya lebih suka GIMP).
- untuk warna html, masuklah ke situs ini (colorgenerator atau colorhunter yang merupakan referensi saya untuk warna
Saya tidak tahu tentang Linux atau Mac, jadi TUT ini hanya untuk Windows. Tapi saya yakin langkahnya sama saja.
Kutipan:
LANGKAH setelah mendownload alat (Apktool):
- ekstrak kedua file zip yang telah didownload. (Jar dan aapt)
- Anda akan mendapatkan 3 file (aapt.exe, apktool.bat, dan apktool.jar), tempatkan bersama dalam satu folder.
- masuk ke Menu Utama, cari "cmd", salin cmd ke folder apktool.
LANGKAH-LANGKAH untuk menginstal:
1) tarik kerangka kerja Anda-res.apk (dalam sistem / kerangka kerja)
2) tarik Systemui.apk (di sistem / aplikasi)
3) pasang dengan perintah
Kode:
Apktool jika framework-res.apk
Kode:
Apktool jika SystemUI.apk
Ini akan menginstal framework dan systemui untuk ROM saat ini.
2. LANGKAH-LANGKAH untuk membuat tema:
1) mendekompilasi SystemUI.apk dengan perintah.
Kode:
Apktool d SystemUI.apk
2) lalu masuk ke SystemUI / res / drawable-hdpi / (untuk mengedit gambar)
Hati-hati dengan .9.png. Gunakan alat Draw9Patch yang lebih baik untuk diedit .9patch pngs.
Kutipan:
Ini adalah daftar png dan di mana ia akan menampilkan:
Untuk latar belakang:
* Notification_panel_bg.9 ---------------------------------------------- - | (Status bar bg)
* Tw_quick_panel_list_bg_f / n / p ---------------------------------------- | (Toggle bg)
* Tw_quick_panel_quick_setting_button_bg_normal.9 --------- | (Tombol toggle background)
* Tw_status_bar_call_ongoing _ ##### 9 ---------------------------- | (Tampilan status bar saat panggilan)
Untuk ikon:
* Semua tw_quick_panel_icon _ ###. Png ---------------------------------- | (Tombol toggle)
* Stat_sys_battery_ #, stat_sys_battery_charge_anim ## ------ | (Untuk display baterai)
* Tw_quickpanel_icon _ #. Png ------------------------------------------- | (Untuk status bar exped quicksetting)
* Tw_quick_panel_plnm_setting_dv ---------------------------------- | (Untuk pembagi antara quicksetting dan clock)
* Tw_status_bar_close_on / off ------------------------------------------ | (Untuk status bar bawah drag)
Untuk tumbnail baru-baru ini:
* Cari semua recents_thumbnail _ #. Png ------------------------------ | (Untuk thumbnail bg)
* Tw_btn_default_normal_holo_recent_button.9 ------------------ | (Untuk btn bg)
* Tw_recent_panel_icon _ ###### _ holo_dark ---------------------- | (Untuk ikon btn)
Itu semua untuk gambar penting (gambar lain yang akan Anda ketahui hanya dengan tampilan dan tempatnya)
Kutipan:
3. CARA MENGUBAH WARNA TEKS.
Res / layout:
1. tw_status bar.xml
Warna teks baterai
Kode:
<TextView android: textSize = "12.0dip" android: textColor = "# sesuatu"
Warna teks jam
Kode:
<Com.android.systemui.statusbar.policy.Clock android: textSize = "@ dimen / status_bar_clock_text_size" android: textColor = "# something"
Ubah "sesuatu" dengan warna pilihan Anda.
2. tw_status_bar_expanded_header.xml
Untuk pull down clock color.
Kode:
<Com.android.systemui.statusbar.policy.Clock android: textAppearance = "@ style / TextAppearance.StatusBar.Expanded.Clock" android: textColor = "# something"
Untuk warna tanggal
Kode:
"@ Style / TextAppearance.StatusBar.Expanded.Date" android: textColor = "# something"
Res / values:
1. colors.xml
Untuk menarik ke bawah label Notifikasi warna.
Kode:
<Color name = "notification_category_color">
Untuk warna teks label tombol hapus.
Kode:
<Color name = "tw_status_bar_clear_btn_text">
2. styles.xml
Kode:
<Style name = "TextAppearance.StatusBar.Expanded.Clock" parent = "@ style / TextAppearance.StatusBar.Expanded">
<Item name = "android: textSize"> 32.0dip </ item>
<Item name = "android: textStyle"> normal </ item>
<Item name = "android: textColor"> # ff33b5e5 </ item>
<Item name = "android: fontFamily"> sans-serif-light </ item>
Kode:
<Style name = "TextAppearance.StatusBar.Expanded.Date" parent = "@ style / TextAppearance.StatusBar.Expanded">
<Item name = "android: textSize"> 12.0dip </ item>
<Item name = "android: textStyle"> normal </ item>
<Item name = "android: textColor"> # FF9CE4FE </ item>
<Item name = "android: textAllCaps"> true </ item>
Kode:
<Style name = "TextAppearance.StatusBar.Expanded.Network" parent = "@ style / TextAppearance.StatusBar.Expanded">
<Item name = "android: textSize"> 14.0dip </ item>
<Item name = "android: textStyle"> normal </ item>
<Item name = "android: textColor"> # ff33b5e5 </ item>
Anda bisa mengubah ukuran teks, warna, gaya (bold atau normal) di xml itu.
Kutipan:
4. CARA MEMBUAT INCREMENT BATERAI 1%:
Res / drawable /
- edit stat_sys_battery.xml dan stat_sys_battery_charge.xml menjadi seperti ini:
Kode:
<? Xml version = "1.0" encoding = "utf-8"?><Level-list
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: drawable = "@ drawable / stat_sys_battery_0" android: maxLevel = "0" />
<Item android: drawable = "@ drawable / stat_sys_battery_1" android: maxLevel = "1" />
<Item android: drawable = "@ drawable / stat_sys_battery_2" android: maxLevel = "2" />
<Item android: drawable = "@ drawable / stat_sys_battery_3" android: maxLevel = "3" />
<Item android: drawable = "@ drawable / stat_sys_battery_4" android: maxLevel = "4" />
<Item android: drawable = "@ drawable / stat_sys_battery_5" android: maxLevel = "5" />....
Sampai:Kode:
.....<Item android: drawable = "@ drawable / stat_sys_battery_95" android: maxLevel = "95" />
<Item android: drawable = "@ drawable / stat_sys_battery_96" android: maxLevel = "96" />
<Item android: drawable = "@ drawable / stat_sys_battery_97" android: maxLevel = "97" />
<Item android: drawable = "@ drawable / stat_sys_battery_98" android: maxLevel = "98" />
<Item android: drawable = "@ drawable / stat_sys_battery_99" android: maxLevel = "99" />
<Item android: drawable = "@ drawable / stat_sys_battery_100" android: maxLevel = "100" /></ Level-list>
Layar pengisian baterai animasi:
Kode:
<? Xml version = "1.0" encoding = "utf-8"?>
<Level-list
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: maxLevel = "0">
<Animation-list android: oneshot = "salah"
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: duration = "1500" android: drawable = "@ drawable / stat_sys_battery_0" />
<Item android: duration = "500" android: drawable = "@ drawable / stat_sys_battery_charge_anim0" />
</ Daftar animasi>
</ Item>
<Item android: maxLevel = "1">
<Animation-list android: oneshot = "salah"
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: duration = "1500" android: drawable = "@ drawable / stat_sys_battery_1" />
<Item android: duration = "500" android: drawable = "@ drawable / stat_sys_battery_charge_anim1" />
</ Daftar animasi>
</ Item>
<Item android: maxLevel = "2">
<Animation-list android: oneshot = "salah"
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: duration = "1500" android: drawable = "@ drawable / stat_sys_battery_2" />
<Item android: duration = "500" android: drawable = "@ drawable / stat_sys_battery_charge_anim2" />
</ Daftar animasi>
.
.
.
.
Sampai:
Kode:
.
.
.
.
<Item android: maxLevel = "100">
<Animation-list android: oneshot = "salah"
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: duration = "1500" android: drawable = "@ drawable / stat_sys_battery_100" />
<Item android: duration = "500" android: drawable = "@ drawable / stat_sys_battery_charge_anim100" />
</ Daftar animasi>
</ Item>
<Item android: maxLevel = "101">
<Animation-list android: oneshot = "salah"
Xmlns: android = "http://schemas.android.com/apk/res/android">
<Item android: duration = "1000" android: drawable = "@ drawable / stat_sys_battery_100" />
<Item android: duration = "500" android: drawable = "@ drawable / stat_sys_battery_charge_animfull" />
</ Daftar animasi>
</ Item>
</ Level-list>
Lalu pasang ikon baterai di res / drawable-hdpi, kompilasi ulang.
Kutipan:
5. BAGAIMANA MEMBUAT JAM PUSAT?
Res / layout
Tw_status_bar.xml
Kode:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="@drawable/status_bar_background" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<ImageView android:id="@id/notification_lights_out" android:paddingLeft="6.0dip" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" />
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="6.0dip" android:paddingRight="6.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/left_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<TextView android:textSize="15.0dip" android:gravity="center_vertical" android:id="@id/carrierLabel" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
<ImageView android:id="@id/doNotDisturbIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tw_dnd" android:alpha="0.7" android:scaleX="0.85" android:scaleY="0.85" />
<com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
<com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
</LinearLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Clock android:textSize="@dimen/status_bar_clock_text_size" android:textColor="#ff99FF00" android:gravity="center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/right_icons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentRight="true">
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="0.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" />
<TextView android:textSize="9.0dip" android:textColor="#ff99FF00" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" />
<ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:layout_marginRight="4.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="centerInside" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="centerInside" />
</ImageSwitcher>
<com.android.systemui.statusbar.phone.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:id="@id/ticker_text_view_old" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:id="@id/ticker_text_view_new" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.phone.TickerView>
</LinearLayout>
</com.android.systemui.statusbar.phone.PhoneStatusBarView>
Edit xml seperti milikku
Kutipan:
6. BAGAIMANA MENGEMBALIKAN TOGGLE:
sebelum:
Res / nilai
Arrays.xml
Kode:
<String-array name = "QuickSettingButtonAttribute">
<Item> Wifi </ item>
<Item> <string-array name = "QuickSettingButtonAttribute">
<Item> Wifi </ item>
<Item> Lokasi </ item>
<Item> SilentMode </ item>
<Item> AutoRotate </ item>
<Item> Bluetooth </ item>
<Item> MobileData </ item>
<Item> DormantMode </ item>
<Item> PowerSaving </ item>
<Item> AllShareCast </ item>
<Item> MultiWindow </ item>
<Item> Sinkronisasi </ item>
</ String-array>
Atur saja apa yang Anda inginkan dengan mengganti susunan xml itu.
misalnya. Anda ingin membuat GPS beralih ke sisi lain:
Kode HTML:
<String-array name = "QuickSettingButtonAttribute">
<Item> Wifi </ item>
<Item> SilentMode </ item>
<Item> AutoRotate </ item>
<Item> Bluetooth </ item>
<Item> MobileData </ item>
<Item> DormantMode </ item>
<Item> PowerSaving </ item>
<Item> AllShareCast </ item>
<Item> MultiWindow </ item>
<Item> Lokasi </ item>
<Item> Sinkronisasi </ item>
</ String-array>
Setelah:
Itu, lalu kompilasi ulang!
Kutipan:
7. CARA MENGHAPUS BAR BRIGHTNESS:
Res / layout
Tw_status_bar_expanded.xml
Temukan:
Kode:
<LinearLayout android: orientation = "vertical" android: id = "@ id / brightness_controller" android: background = "# 00000000" android: layout_width = "fill_parent" android: layout_height = "56.0dip">
ganti
Kode:
Android: layout_height = "56.0dip"
dengan
Kode:
Android: layout_height = "0.0dip"
Kompilasi ulang
Kutipan:
8. BAGAIMANA MENGUBAH STATUS BAR LATAR BELAKANG:
Res / drawable-hdpi
Ini cara termudah.
Ganti notification_panel_bg.9.png dengan gambar pilihan Anda dengan resolusi 480x800.
Tapi sebelum itu jangan lupa buat semua toggle background menjadi transparan.
Nah, ini adalah beberapa cara yang bisa Anda lakukan:
1) ini adalah langkah yang selalu saya gunakan untuk membuat perubahan latar belakang.
- mendekompilasi apk.
- masuk ke folder res / drawable-hdpi.
- temukan notification_panel_bg.9.png.
- buka dengan editor foto pilihan Anda.
- Ubah ukuran gambar menjadi 482x802 (sehingga piksel 2x2 lainnya akan ditinggalkan untuk .9patch).
- buka gambar yang ingin anda buat sebagai background (copy saja)
- sisipkan ke notification_panel_bg.9.png yang telah diubah ukurannya.
- menggambar keseluruhan 2x2 dengan garis hitam # 000000.
- simpan gambarnya
- kompilasi ulang
2) Langkah ini jauh lebih mudah, tapi saya tidak merekomendasikannya. Terkadang gagal.
- mendekompilasi apk.
- mengkompilasi ulang apk.
- pergi untuk membangun / apk / res / drawable-hdpi.
- temukan notification_panel_bg.9.png
- ganti dengan gambar pilihan anda. (Tapi jangan lupa beri nama gambar dengan nama yang sama di antaranya .9)
- buat apk lagi
- apk Anda selesai akan berada di folder dist.
3) ini adalah cara teraman yang saya kira tapi selalu sukses.
- mendekompilasi apk.
- masuk ke folder res / layout.
- temukan tw_status_bar_expanded.xml
- di xml itu, temukan android: background = "@ drawable / notification_panel_bg".
- ubah notification_panel_bg dengan nama apapun. Contoh android: background = "@ drawable / mybackground".
- simpan xml
- lalu, masuk ke folder res / drawable-hdpi.
- tempatkan gambar Anda dengan nama "mybackground".
- kompilasi apk
Kutipan:
9. BAGAIMANA MEMBUAT TOMBOL BUTTON DAN PEMBERITAHUAN:
Res / layout
Tw_status_bar_expanded.xml
Temukan:
semua
Kode:
Android: background = "# something"
Di xml ubah "#something" dengan "# 00000000".
Kutipan:
Ubah nilai ke transparansi 0000> transparansi transparansi, transparansi - transparansi 75%, transparansi - transparansi, transparansi - transparansi 25% ->
Nilai lainnya (1e1e1e) adalah RBG untuk warna abu-abu, jika Anda menginginkannya hitam maka akan menjadi (000000).
Begitu:
# 00000000 - hitam dengan transparansi 100%
# 3F000000 - hitam dengan transparansi 75%
# 7F000000 - hitam dengan transparansi 50%
# BF000000 - hitam dengan transparansi 25%
Posting ini awalnya diposting di http://forum.xda-developers.com/show....php?t=2078585 oleh majdinj (tekan terima kasih kepadanya)
Lalu pergi ke SystemUI \ smali \ com \ android \ systemui \ statusbar \ fon e
TeleponStatusBar.smali
- temukan -0x100 (akan ada dua dari itu di smali itu)
- ubah keduanya menjadi 0x0 (0 = nol)
- simpan smali
(Yang akan membuat panel notifikasi transparan).
Kutipan:
10. BAGAIMANA MEMBUAT LATAR BELAKANG TRANSPARAN:
Res / layout
Tw_status_bar_expanded.xml
Temukan:
Kode:
Android: id = "@ id / notification_panel" android: background = "@ drawable / notification_panel_bg"
Ubah "@ drawable / notification_panel_bg" menjadi "# 00000000" atau rentang transparansi pilihan Anda. Kemudian, kompilasi ulang
forum xda
Komentar
Posting Komentar