a. IMAGE
a1.경로 : res/drawable-hdpi
a2.이미지명 : stat_sys_battery_0.png ~ stat_sys_battery_100.png - 기본 이미지
stat_sys_battery_charge_anim0.png ~ stat_sys_battery_charge_anim100.png - 충전 이미지
stat_sys_battery_full.png - 100% 충전 이미지
stat_sys_battery_low.png - 배터리 부족 경고 이미지
b. XML
b1.경로 ; res/drawable
b2.XML명
b2-1. stat_sys_battery.xml
<?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="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_0" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="1"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_1" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="2"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_2" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="3"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_3" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="4"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_4" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="5"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_5" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="6"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_6" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="7"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_7" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="8"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_8" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="9"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_9" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="10"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_10" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="11"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_11" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="12"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_12" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="13"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_13" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="14"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_14" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:maxLevel="15"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_15" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_low" /> </animation-list> </item> <item android:drawable="@drawable/stat_sys_battery_16" android:maxLevel="16" /> <item android:drawable="@drawable/stat_sys_battery_17" android:maxLevel="17" /> <item android:drawable="@drawable/stat_sys_battery_18" android:maxLevel="18" /> <item android:drawable="@drawable/stat_sys_battery_19" android:maxLevel="19" /> <item android:drawable="@drawable/stat_sys_battery_20" android:maxLevel="20" /> <item android:drawable="@drawable/stat_sys_battery_21" android:maxLevel="21" /> <item android:drawable="@drawable/stat_sys_battery_22" android:maxLevel="22" /> <item android:drawable="@drawable/stat_sys_battery_23" android:maxLevel="23" /> <item android:drawable="@drawable/stat_sys_battery_24" android:maxLevel="24" /> <item android:drawable="@drawable/stat_sys_battery_25" android:maxLevel="25" /> <item android:drawable="@drawable/stat_sys_battery_26" android:maxLevel="26" /> <item android:drawable="@drawable/stat_sys_battery_27" android:maxLevel="27" /> <item android:drawable="@drawable/stat_sys_battery_28" android:maxLevel="28" /> <item android:drawable="@drawable/stat_sys_battery_29" android:maxLevel="29" /> <item android:drawable="@drawable/stat_sys_battery_30" android:maxLevel="30" /> <item android:drawable="@drawable/stat_sys_battery_31" android:maxLevel="31" /> <item android:drawable="@drawable/stat_sys_battery_32" android:maxLevel="32" /> <item android:drawable="@drawable/stat_sys_battery_33" android:maxLevel="33" /> <item android:drawable="@drawable/stat_sys_battery_34" android:maxLevel="34" /> <item android:drawable="@drawable/stat_sys_battery_35" android:maxLevel="35" /> <item android:drawable="@drawable/stat_sys_battery_36" android:maxLevel="36" /> <item android:drawable="@drawable/stat_sys_battery_37" android:maxLevel="37" /> <item android:drawable="@drawable/stat_sys_battery_38" android:maxLevel="38" /> <item android:drawable="@drawable/stat_sys_battery_39" android:maxLevel="39" /> <item android:drawable="@drawable/stat_sys_battery_40" android:maxLevel="40" /> <item android:drawable="@drawable/stat_sys_battery_41" android:maxLevel="41" /> <item android:drawable="@drawable/stat_sys_battery_42" android:maxLevel="42" /> <item android:drawable="@drawable/stat_sys_battery_43" android:maxLevel="43" /> <item android:drawable="@drawable/stat_sys_battery_44" android:maxLevel="44" /> <item android:drawable="@drawable/stat_sys_battery_45" android:maxLevel="45" /> <item android:drawable="@drawable/stat_sys_battery_46" android:maxLevel="46" /> <item android:drawable="@drawable/stat_sys_battery_47" android:maxLevel="47" /> <item android:drawable="@drawable/stat_sys_battery_48" android:maxLevel="48" /> <item android:drawable="@drawable/stat_sys_battery_49" android:maxLevel="49" /> <item android:drawable="@drawable/stat_sys_battery_50" android:maxLevel="50" /> <item android:drawable="@drawable/stat_sys_battery_51" android:maxLevel="51" /> <item android:drawable="@drawable/stat_sys_battery_52" android:maxLevel="52" /> <item android:drawable="@drawable/stat_sys_battery_53" android:maxLevel="53" /> <item android:drawable="@drawable/stat_sys_battery_54" android:maxLevel="54" /> <item android:drawable="@drawable/stat_sys_battery_55" android:maxLevel="55" /> <item android:drawable="@drawable/stat_sys_battery_56" android:maxLevel="56" /> <item android:drawable="@drawable/stat_sys_battery_57" android:maxLevel="57" /> <item android:drawable="@drawable/stat_sys_battery_58" android:maxLevel="58" /> <item android:drawable="@drawable/stat_sys_battery_59" android:maxLevel="59" /> <item android:drawable="@drawable/stat_sys_battery_60" android:maxLevel="60" /> <item android:drawable="@drawable/stat_sys_battery_61" android:maxLevel="61" /> <item android:drawable="@drawable/stat_sys_battery_62" android:maxLevel="62" /> <item android:drawable="@drawable/stat_sys_battery_63" android:maxLevel="63" /> <item android:drawable="@drawable/stat_sys_battery_64" android:maxLevel="64" /> <item android:drawable="@drawable/stat_sys_battery_65" android:maxLevel="65" /> <item android:drawable="@drawable/stat_sys_battery_66" android:maxLevel="66" /> <item android:drawable="@drawable/stat_sys_battery_67" android:maxLevel="67" /> <item android:drawable="@drawable/stat_sys_battery_68" android:maxLevel="68" /> <item android:drawable="@drawable/stat_sys_battery_69" android:maxLevel="69" /> <item android:drawable="@drawable/stat_sys_battery_70" android:maxLevel="70" /> <item android:drawable="@drawable/stat_sys_battery_71" android:maxLevel="71" /> <item android:drawable="@drawable/stat_sys_battery_72" android:maxLevel="72" /> <item android:drawable="@drawable/stat_sys_battery_73" android:maxLevel="73" /> <item android:drawable="@drawable/stat_sys_battery_74" android:maxLevel="74" /> <item android:drawable="@drawable/stat_sys_battery_75" android:maxLevel="75" /> <item android:drawable="@drawable/stat_sys_battery_76" android:maxLevel="76" /> <item android:drawable="@drawable/stat_sys_battery_77" android:maxLevel="77" /> <item android:drawable="@drawable/stat_sys_battery_78" android:maxLevel="78" /> <item android:drawable="@drawable/stat_sys_battery_79" android:maxLevel="79" /> <item android:drawable="@drawable/stat_sys_battery_80" android:maxLevel="80" /> <item android:drawable="@drawable/stat_sys_battery_81" android:maxLevel="81" /> <item android:drawable="@drawable/stat_sys_battery_82" android:maxLevel="82" /> <item android:drawable="@drawable/stat_sys_battery_83" android:maxLevel="83" /> <item android:drawable="@drawable/stat_sys_battery_84" android:maxLevel="84" /> <item android:drawable="@drawable/stat_sys_battery_85" android:maxLevel="85" /> <item android:drawable="@drawable/stat_sys_battery_86" android:maxLevel="86" /> <item android:drawable="@drawable/stat_sys_battery_87" android:maxLevel="87" /> <item android:drawable="@drawable/stat_sys_battery_88" android:maxLevel="88" /> <item android:drawable="@drawable/stat_sys_battery_89" android:maxLevel="89" /> <item android:drawable="@drawable/stat_sys_battery_90" android:maxLevel="90" /> <item android:drawable="@drawable/stat_sys_battery_91" android:maxLevel="91" /> <item android:drawable="@drawable/stat_sys_battery_92" android:maxLevel="92" /> <item android:drawable="@drawable/stat_sys_battery_93" android:maxLevel="93" /> <item android:drawable="@drawable/stat_sys_battery_94" android:maxLevel="94" /> <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" /> <item android:drawable="@drawable/stat_sys_battery_100" android:maxLevel="101" /> </level-list>
|
b2-2. stat_sys_battery_charge.xml
가운데의 stat_sys_battery_charge_anim0~7까지의 부분을 본인이 갖고 있는 이미지에 맞게 수정하세요.
<?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="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="0" android:drawable="@drawable/stat_sys_battery_charge_anim0" /> </animation-list> </item> <item android:maxLevel="99"> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim0" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim1" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim2" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim3" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim4" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim5" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim6" /> <item android:duration="1000" android:drawable="@drawable/stat_sys_battery_charge_anim7" /> </animation-list> </item> <item android:drawable="@drawable/stat_sys_battery_charge_anim100" android:maxLevel="100" /> <item android:drawable="@drawable/stat_sys_battery_charge_anim100" android:maxLevel="101" /> </level-list> |
a, IMAGE
a1.경로 : res/drawable-hdpi
a2.이미지명 : stat_sys_data_connected_1x.png, stat_sys_data_fully_connected_1x.png
stat_sys_data_connected_3g.png, stat_sys_data_fully_connected_3g.png
stat_sys_data_connected_4g.png, stat_sys_data_fully_connected_4g.png
stat_sys_data_connected_e.png, stat_sys_data_fully_connected_e.png
stat_sys_data_connected_g.png, stat_sys_data_fully_connected_g.png
stat_sys_data_connected_h.png, stat_sys_data_fully_connected_h.png - 통신 구분 이미지
stat_sys_signal_0.png ~ stat_sys_signal_4.png, stat_sys_signal_0_fully.png ~ stat_sys_signal_4_fully.png
- 통신 안테나 이미지
stat_sys_signal_in.png, stat_sys_signal_inout.png, stat_sys_signal_no_inout.png, stat_sys_signal_out.png
- 통신 상태 이미지
stat_sys_wifi_signal_0.png ~ stat_sys_wifi_signal_4.png,
stat_sys_wifi_signal_1_fully.png ~ stat_sys_wifi_signal_4_fully.png - 와이파이 안테나 이미지
a. Image
a1.경로 : res/drawable-hdpi
a2.이미지명
tw_quickpanel_bg.png - 퀵패널 배경
tw_quick_panel_off.png, tw_quick_panel_on.png - 퀵패널 버튼 선택 이미지
tw_quickpanel_title_background.9.png 퀵패널 타이틀 이미지
tw_plmn_bg.9.png - 통신사 타이틀 이미지
tw_quicksetting_bg.png - 퀵버튼 배경 이미지(퀵버튼 하나당 한개의 이미지를 갖고 있음)
tw_quicksetting_divider.png - 5개의 퀵버튼 사이를 구분하는 이미지
tw_quick_panel_icon_bluetooth_dim.png, tw_quick_panel_icon_bluetooth_off.png,
tw_quick_panel_icon_bluetooth_on.png - 블루투스 퀵패널 아이콘
tw_quick_panel_icon_data_connection_dim.png, tw_quick_panel_icon_data_connection_off.png,
tw_quick_panel_icon_data_connection_on.png - 통신 퀵패널 아이콘
tw_quick_panel_icon_gps_off.png, tw_quick_panel_icon_gps_on.png - gps 퀵패널 아이콘
tw_quick_panel_icon_rotation_off.png, tw_quick_panel_icon_rotation_on - 자동회전 퀵패널 아이콘
tw_quick_panel_icon_silent_mode_on_off - 진동 끄기 퀵패널 아이콘
tw_quick_panel_icon_silent_mode_on_on.png - 진동 퀵패널 아이콘
tw_quick_panel_icon_silent_off.png - 소리 퀵패널 아이콘
tw_quick_panel_icon_silent_on.png - 무음 퀵패널 아이콘
tw_quick_panel_icon_wifi_dim.png, tw_quick_panel_icon_wifi_off.png, tw_quick_panel_icon_wifi_on.png
- 무선 퀵패널 아이콘
status_bar_close_on.9.png - 기본 CLOSE 이미지
status_bar_call_ongoing_background.9.png - 퀵 바 배경 대용
tw_status_bar_close_on.9.png - 터치위즈 용 CLOSE 이미지
tw_btn_default_small_normal.9.png - 버튼 일반 이미지
tw_btn_default_small_normal_disable.9.png - 버튼 비활성하 이미지
tw_btn_default_small_normal_disable_focused.9.png - 버튼 비할성화 포커스 이미지
tw_btn_default_small_pressed.9.png - 버튼 클릭 이미지
tw_btn_default_small_selected.9.png - 버튼 클릭 이미지
b.XML
b1.경로 ; res/layout
b2.XML명
b2-1. tw_status_bar.xml
b2-1-1. 퀵 바 배경 변경
하단 빨간색으로 강조도니 background를 아래와 같이 수정 후 hdpi에 있는 status_bar_call_ongoing_background.9.png를
수정 적용
<?xml version="1.0" encoding="utf-8"?> <com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:background="@drawable/status_bar_call_ongoing_background" android:focusable="true" android:descendantFocusability="afterDescendants" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui"> <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:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0"> <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_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent"> <ImageView android:id="@id/ims_icon" android:paddingLeft="4.0dip" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/tw_signal_cluster_view" /> <FrameLayout android:gravity="center" android:paddingLeft="4.0dip" android:paddingRight="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent"> <ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <TextView android:textSize="7.0dip" android:typeface="sans" android:textStyle="bold" android:textColor="#ffffffff" android:layout_gravity="bottom|center" android:id="@id/battery_text" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_network_name_separator" android:shadowColor="#ffffffff" android:shadowDx="0.0" android:shadowDy="0.0" android:shadowRadius="1.0" /> </FrameLayout> </LinearLayout> <com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:id="@id/clock" android:paddingLeft="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" /> </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="center" /> <com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" /> </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> |
b2-2 tw_status_bar_expanded.xml
b2-2-1. 통신사 색상 변경
하단 파란색 부분의 칼라 코드를 수정
b2-2-2. 지우기 버튼 색상 변경
하단 빨간색 부분의 칼라코드를 수정
b2-2-3. 퀵패널 타이틀 설정 변경
하단 주황색으로 된 부분을 수정, textColor는 칼라코드를, textSize는 10단위. dip로, typeface는 글씨체임
android:id="@id/noNotificationsTitle" 는 알림없음
android:id="@id/onGoingNotificationText" 는 진행 중
android:id="@id/latestNotificationText" 는 알림
<?xml version="1.0" encoding="utf-8"?> <com.android.systemui.statusbar.phone.ExpandedView android:orientation="vertical" android:descendantFocusability="afterDescendants" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui"> <LinearLayout android:id="@id/quicksetting_scroller" android:layout_width="fill_parent" android:layout_height="wrap_content" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui"> <LinearLayout android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_wifi_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_wifi_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_wifi_text" systemui:onIcon="@drawable/tw_quick_panel_icon_wifi_on" systemui:offIcon="@drawable/tw_quick_panel_icon_wifi_off" systemui:dimIcon="@drawable/tw_quick_panel_icon_wifi_dim" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_bluetooth_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_bluetooth_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_bluetooth_text" systemui:onIcon="@drawable/tw_quick_panel_icon_bluetooth_on" systemui:offIcon="@drawable/tw_quick_panel_icon_bluetooth_off" systemui:dimIcon="@drawable/tw_quick_panel_icon_bluetooth_dim" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_gps_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_gps_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_gps_text" systemui:onIcon="@drawable/tw_quick_panel_icon_gps_on" systemui:offIcon="@drawable/tw_quick_panel_icon_gps_off" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_mobile_data_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_mobile_data_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_mobile_data_text" systemui:onIcon="@drawable/tw_quick_panel_icon_data_connection_on" systemui:offIcon="@drawable/tw_quick_panel_icon_data_connection_off" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_silent_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_silent_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_silent_mode_text" systemui:onIcon="@drawable/tw_quick_panel_icon_silent_mode_on_on" systemui:offIcon="@drawable/tw_quick_panel_icon_silent_off" systemui:onIcon2="@drawable/tw_quick_panel_icon_silent_on" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_auto_rotation_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_auto_rotation_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_rotation_text" systemui:onIcon="@drawable/tw_quick_panel_icon_rotation_on" systemui:offIcon="@drawable/tw_quick_panel_icon_rotation_off" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_4G_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_4G_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_4G_text" systemui:onIcon="@drawable/tw_quickpanel_icon_4g_on" systemui:offIcon="@drawable/tw_quickpanel_icon_4g_off" systemui:dimIcon="@drawable/tw_quickpanel_icon_4g_dim" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:id="@id/quickpanel_airplane_mode_btn_layout" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0"> <ImageView android:background="@drawable/tw_quicksetting_divider" android:layout_width="wrap_content" android:layout_height="fill_parent" /> <com.android.systemui.statusbar.policy.QuickSettingButton android:id="@id/quickpanel_airplane_mode_btn" android:background="@drawable/tw_quicksetting_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" systemui:buttonText="@string/quickpanel_airplane_mode_text" systemui:onIcon="@drawable/tw_quick_panel_icon_airplane_on" systemui:offIcon="@drawable/tw_quick_panel_icon_airplane_off" systemui:dimIcon="@drawable/tw_quick_panel_icon_airplane_dim" /> </LinearLayout> </LinearLayout> </LinearLayout> <LinearLayout android:orientation="horizontal" android:background="@drawable/tw_plmn_bg" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false"> <com.android.systemui.statusbar.phone.CarrierLabel android:textSize="17.329987dip" android:textColor="#ffffffff" android:ellipsize="marquee" android:layout_gravity="center_vertical" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="14.669983dip" android:layout_marginTop="8.669983dip" android:layout_marginBottom="10.0dip" android:layout_weight="1.0" /> <com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Date" android:gravity="right|center" android:id="@id/date" android:paddingLeft="6.669983dip" android:paddingRight="6.669983dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" /> <TextView android:textSize="14.0dip" android:textColor="#ffeb0000" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="5.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" android:contentDescription="@string/accessibility_clear_all" /> </LinearLayout> <TextView android:textSize="14.669983dip" android:typeface="sans" android:textColor="#ffffffff" android:gravity="left|center" android:id="@id/noNotificationsTitle" android:background="@drawable/tw_quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" /> <ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls"> <FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0"> <LinearLayout android:orientation="vertical" android:id="@id/scroll_layout" android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/settings_button" android:background="@drawable/notification_row_bg" android:paddingTop="5.0dip" android:paddingBottom="5.0dip" android:focusable="true" android:visibility="gone" android:clickable="true" android:layout_width="fill_parent" android:layout_height="@dimen/notification_height"> <ImageView android:layout_width="@dimen/notification_icon_width" android:layout_height="@dimen/notification_icon_height" android:layout_marginLeft="@dimen/notification_icon_marginleft" android:src="@drawable/tw_quickpanel_icon_settings" android:layout_weight="0.0" android:contentDescription="@string/accessibility_settings_button" /> <TextView android:textSize="16.0dip" android:textStyle="bold" android:textColor="#ffffffff" android:paddingLeft="9.339996dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_settings_settings_button" android:layout_weight="100.0" /> </LinearLayout> <LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:textSize="14.669983dip" android:typeface="sans" android:textColor="#ffffffff" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:background="@drawable/tw_quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" /> </LinearLayout> <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/notification_height" /> <LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:textSize="14.669983dip" android:typeface="sans" android:textColor="#ffffffff" android:gravity="left|center" android:id="@id/latestNotificationText" android:background="@drawable/tw_quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" /> </LinearLayout> <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/notification_height" /> <com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/notification_height" /> </LinearLayout> </FrameLayout> </ScrollView> </com.android.systemui.statusbar.phone.ExpandedView> |
b2-3 tw_status_bar_tracking.xml
퀴패널 하단 이미지 수정하는 부분이며, 아래와 같이 수정한 후 status_bar._close_on.9.png를 바꿔주시거나
tw_status_bar_close_on.9.png 이미지를 그냥 변경해 주셔도 됩니다.
<?xml version="1.0" encoding="utf-8"?> <com.android.systemui.statusbar.phone.TrackingView android:orientation="vertical" android:paddingLeft="0.0px" android:paddingRight="0.0px" android:paddingBottom="0.0px" android:focusable="true" android:visibility="gone" android:descendantFocusability="afterDescendants" xmlns:android="http://schemas.android.com/apk/res/android"> <FrameLayout android:background="@drawable/tw_quickpanel_bg_tile" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" /> <com.android.systemui.statusbar.phone.CloseDragHandle android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="wrap_content"> <ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/status_bar_close_on" android:scaleType="fitXY" /> </com.android.systemui.statusbar.phone.CloseDragHandle> </com.android.systemui.statusbar.phone.TrackingView> |
b3.경로 ; res/values
b4.XML명
b4-1. drawables.xml
이벤트 패널 색상 수정은 하단 파란색으로 강조된 값들의 색상 코드를 변경하면 됩니다.
<?xml version="1.0" encoding="utf-8"?> <resources> <item type="drawable" name="notification_number_text_color">#ffffffff</item> <item type="drawable" name="notification_item_background_color">#ff1f2225</item> <item type="drawable" name="notification_item_background_color_pressed">#ffdc63a8</item> <item type="drawable" name="ticker_background_color">#ff1d1d1d</item> <item type="drawable" name="status_bar_background">#ff000000</item> <item type="drawable" name="status_bar_recents_background_solid">#b3000000</item> <item type="drawable" name="status_bar_recents_app_thumbnail_background">#88000000</item> <item type="drawable" name="status_bar_notification_row_background_color">#ff090909</item> <item type="drawable" name="notification_header_bg">#ff000000</item> <item type="drawable" name="notification_tracking_bg">#d8000000</item> <item type="drawable" name="recents_callout_line">#99ffffff</item> <item type="drawable" name="notification_item_background_legacy_color">#ffdc63a8</item> <item type="drawable" name="tw_notification_background_null">#00000000</item> <item type="drawable" name="tw_notification_background_pressed">#ffdc63a8</item> <item type="drawable" name="APKTOOL_DUMMY_0004">false</item> <item type="drawable" name="APKTOOL_DUMMY_0005">false</item> <item type="drawable" name="APKTOOL_DUMMY_0006">false</item> <item type="drawable" name="APKTOOL_DUMMY_0007">false</item> <item type="drawable" name="APKTOOL_DUMMY_0008">false</item> <item type="drawable" name="APKTOOL_DUMMY_0065">false</item> <item type="drawable" name="APKTOOL_DUMMY_0069">false</item> <item type="drawable" name="APKTOOL_DUMMY_006a">false</item> <item type="drawable" name="APKTOOL_DUMMY_0087">false</item> <item type="drawable" name="APKTOOL_DUMMY_0088">false</item> <item type="drawable" name="APKTOOL_DUMMY_0089">false</item> <item type="drawable" name="APKTOOL_DUMMY_008a">false</item> <item type="drawable" name="APKTOOL_DUMMY_008b">false</item> <item type="drawable" name="APKTOOL_DUMMY_008c">false</item> <item type="drawable" name="APKTOOL_DUMMY_008d">false</item> <item type="drawable" name="APKTOOL_DUMMY_008e">false</item> <item type="drawable" name="APKTOOL_DUMMY_00a3">false</item> <item type="drawable" name="APKTOOL_DUMMY_00c7">false</item> <item type="drawable" name="APKTOOL_DUMMY_00ed">false</item> <item type="drawable" name="APKTOOL_DUMMY_00ee">false</item> <item type="drawable" name="APKTOOL_DUMMY_00fc">false</item> <item type="drawable" name="APKTOOL_DUMMY_00fd">false</item> <item type="drawable" name="APKTOOL_DUMMY_00fe">false</item> <item type="drawable" name="APKTOOL_DUMMY_0100">false</item> <item type="drawable" name="APKTOOL_DUMMY_0101">false</item> <item type="drawable" name="APKTOOL_DUMMY_0103">false</item> <item type="drawable" name="APKTOOL_DUMMY_0104">false</item> <item type="drawable" name="APKTOOL_DUMMY_0106">false</item> <item type="drawable" name="APKTOOL_DUMMY_0107">false</item> <item type="drawable" name="APKTOOL_DUMMY_0108">false</item> <item type="drawable" name="APKTOOL_DUMMY_010b">false</item> <item type="drawable" name="APKTOOL_DUMMY_010c">false</item> <item type="drawable" name="APKTOOL_DUMMY_010d">false</item> <item type="drawable" name="APKTOOL_DUMMY_010e">false</item> <item type="drawable" name="APKTOOL_DUMMY_010f">false</item> <item type="drawable" name="APKTOOL_DUMMY_0110">false</item> <item type="drawable" name="APKTOOL_DUMMY_0111">false</item> <item type="drawable" name="APKTOOL_DUMMY_0112">false</item> <item type="drawable" name="APKTOOL_DUMMY_0113">false</item> <item type="drawable" name="APKTOOL_DUMMY_0114">false</item> <item type="drawable" name="APKTOOL_DUMMY_0119">false</item> <item type="drawable" name="APKTOOL_DUMMY_011a">false</item> <item type="drawable" name="APKTOOL_DUMMY_011b">false</item> <item type="drawable" name="APKTOOL_DUMMY_011c">false</item> <item type="drawable" name="APKTOOL_DUMMY_011d">false</item> <item type="drawable" name="APKTOOL_DUMMY_0131">false</item> <item type="drawable" name="APKTOOL_DUMMY_0132">false</item> <item type="drawable" name="APKTOOL_DUMMY_0133">false</item> <item type="drawable" name="APKTOOL_DUMMY_0135">false</item> <item type="drawable" name="APKTOOL_DUMMY_0136">false</item> <item type="drawable" name="APKTOOL_DUMMY_0137">false</item> <item type="drawable" name="APKTOOL_DUMMY_013a">false</item> <item type="drawable" name="APKTOOL_DUMMY_013c">false</item> <item type="drawable" name="APKTOOL_DUMMY_013d">false</item> <item type="drawable" name="APKTOOL_DUMMY_013e">false</item> <item type="drawable" name="APKTOOL_DUMMY_013f">false</item> <item type="drawable" name="APKTOOL_DUMMY_0147">false</item> <item type="drawable" name="APKTOOL_DUMMY_0174">false</item> </resources> |
b4-2. styles.xml
b4-2-1. 퀵바 시계 변경
하단 파란색 부분을 수정하면 퀵바의 시계 속성이 변경됩니다.
b4-2-2. 퀵패널 통신사 부분 날짜 변경
하단 빨간색 부분을 수정하면 퀵패널 통신사 부분에 있는 날짜 속성이 변경됩니다.
b4-2-3. 퀵바 알림 텍스트 변경
하단 노란색 부분을 수정하면 퀵바 알림 텍스트 속성이 변경됩니다.
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="TextAppearance.StatusBar.Title" parent="@android:style/TextAppearance.StatusBar"> <item name="android:textAppearance">?android:textAppearanceSmall</item> <item name="android:textStyle">bold</item> <item name="android:textColor">?android:textColorPrimary</item> </style> <style name="TextAppearance.StatusBar.IntruderAlert" parent="@android:style/TextAppearance.StatusBar" /> <style name="TextAppearance.StatusBar.SystemPanel" parent="@android:style/TextAppearance.StatusBar"> <item name="android:textAppearance">?android:textAppearance</item> <item name="android:textStyle">normal</item> <item name="android:textColor">#ff808080</item> </style> <style name="TextAppearance.StatusBar.TextButton" parent="@android:style/TextAppearance.StatusBar"> <item name="android:textAppearance">?android:textAppearance</item> <item name="android:textStyle">normal</item> <item name="android:textColor">#ffffffff</item> </style> <style name="TextAppearance.StatusBar.Clock" parent="@android:style/TextAppearance.StatusBar.Icon"> <item name="android:textSize">16.0dip</item> <item name="android:textStyle">normal</item> <item name="android:textColor">#ffce4f97</item> </style> <style name="TextAppearance.StatusBar.Date" parent="@android:style/TextAppearance.StatusBar.Icon"> <item name="android:textSize">12.0sp</item> <item name="android:textStyle">normal</item> <item name="android:textColor">#ffce4f97</item> </style> <style name="Animation" /> <style name="Animation.ShirtPocketPanel" parent="@style/Animation"> <item name="android:windowEnterAnimation">@android:anim/grow_fade_in_from_bottom</item> <item name="android:windowExitAnimation">@android:anim/shrink_fade_out_from_bottom</item> </style> <style name="Animation.RecentPanel" parent="@style/Animation"> <item name="android:windowEnterAnimation">@android:anim/grow_fade_in_from_bottom</item> <item name="android:windowExitAnimation">@android:anim/shrink_fade_out_from_bottom</item> </style> <style name="Animation.StatusBar" parent="@style/Animation"> <item name="android:windowEnterAnimation">@anim/status_bar_enter</item> <item name="android:windowExitAnimation">@anim/status_bar_exit</item> </style> <style name="Animation.StatusBar.IntruderAlert" parent="@style/Animation.StatusBar"> <item name="android:windowEnterAnimation">@anim/priority_alert_enter</item> <item name="android:windowExitAnimation">@anim/priority_alert_exit</item> </style> <style name="TextAppearance.StatusBar.PhoneTicker" parent="@android:style/TextAppearance.StatusBar.Ticker"> <item name="android:textSize">14.0dip</item> <item name="android:textColor">#ffce4f97</item> </style> <style name="Animation_MiniAppsEditPanel"> <item name="android:windowEnterAnimation">@anim/mini_apps_edit_panel_show_anim</item> <item name="android:windowExitAnimation">@anim/mini_apps_edit_panel_hide_anim</item> </style> </resources> |
a. Image
a1.경로 : res/drawable-hdpi
a2.이미지명
stat_notify_image.png, stat_notify_image_error.png - 알림 이미지
stat_notify_more.png - 추가 설정 이미지
stat_sys_alarm.png - 알람 이미지
stat_sys_data_bluetooth.png, stat_sys_data_bluetooth_connected.png - 블루투스 설정 이미지
stat_sys_gps_acquiring.png, stat_sys_gps_on.png - gps 이미지
stat_sys_no_sim.png - 노 심 이미지
stat_sys_ringer_silent.png - 무음 이미지
stat_sys_ringer_vibrate - 진동 이미지
stat_sys_signal_flightmode.png - 비행기 모드 이미지
a. XML
a1.경로 : res/drawable-hdpi
a2.XML내용
a2-1.signal_cluster_view.xml(임시 등록임)
정확한 용도는 모르겠으나 mobile_inout과 wifi_inout을 적절히 사용하면 와이파이와 통신 inout을 조절 할수 있을듯.