Tutorial :
1. Decompile UI (ĐƯơng nhiên rồi)
2. Chép tất cả mục ở smali và res vào đúng đường dẫn
3. Thêm code này vào values/ids.xml
<item type="id" name="zhiedd_button">false</item>
thêm code này vào expanded
<com.zhiedd.SenzuLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
(layout cần chuyển)
</LinearLayout>
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
&ndocument.getElementById('spoiler') .style.display=='none') {document.getElementById('spoiler') .style.display=''}else{bsp; ( layout chính)
&}bsp; </RelativeLayout>
</com.zhiedd.SenzuLayout>
</com.android.systemui.statusbar.ExpandedView>
đây là ví dụ
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<include layout="@layout/kit_header" /> (phần header )
</RelativeLayout>
<com.zhiedd.SenzuLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<include layout="@layout/volume_sliders" /> ( layout cần chuyển )
</LinearLayout>
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="wrap_content" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="17.0sp" android:textStyle="normal" android:textColor="#ffffffff" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="5.0dip" android:layout_width="fill_parent" android:layout_height="26.0dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="17.0sp" android:textStyle="normal" android:textColor="#ffffffff" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="5.0dip" android:layout_width="fill_parent" android:layout_height="26.0dip" android:text="@string/status_bar_ongoing_events_title" />
phần dưới layout cần chuyển <LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
là layout chín <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="26.0dip">
<TextView android:textSize="17.0sp" android:textStyle="normal" android:textColor="#ffffffff" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="5.0dip" android:layout_width="fill_parent" android:layout_height="26.0dip" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<Button android:textSize="14.0sp" android:textStyle="normal" android:textColor="#ffffffff" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/tombol_hapus" android:layout_width="84.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" />
</RelativeLayout>
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ImageView android:layout_width="fill_parent" android:layout_height="240.0px" android:src="@drawable/blank" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
</RelativeLayout>
</com.zhiedd.SenzuLayout>
</com.android.systemui.statusbar.ExpandedView>
4. thêm dòng này vào header <com.zhiedd.SenzuButton android:gravity="bottom" android:layout_gravity="right" android:id="@id/zhiedd_button" android:layout_width="31.0px" android:layout_height="33.0px" android:layout_marginRight="0.0px" android:layout_alignParentRight="true" />
sẽ ra giống như này <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:orientation="horizontal" android:background="@drawable/begron_header" android:layout_width="fill_parent" android:layout_height="48.0dip" android:baselineAligned="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:orientation="horizontal" android:id="@id/clockdate" android:layout_width="fill_parent" android:layout_height="48.0dip" android:baselineAligned="false" android:layout_alignParentLeft="true">
<com.android.systemui.statusbar.policy.DigitalClock android:gravity="left|center" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="48.0dip" android:layout_marginLeft="4.0dip" android:layout_alignParentLeft="true">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock" android:ellipsize="none" android:gravity="center" android:id="@id/timeDisplayBackground" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Clock" android:ellipsize="none" android:gravity="center" android:id="@id/timeDisplayForeground" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:layout_alignLeft="@id/timeDisplayBackground" android:layout_alignTop="@id/timeDisplayBackground" />
</com.android.systemui.statusbar.policy.DigitalClock>
<com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Date" android:gravity="left|center" android:id="@id/date" android:layout_width="wrap_content" android:layout_height="48.0dip" android:layout_marginLeft="7.0dip" android:layout_toRightOf="@id/clock" />
<com.zhiedd.SenzuButton android:gravity="bottom" android:layout_gravity="right" android:id="@id/zhiedd_button" android:layout_width="31.0px" android:layout_height="33.0px" android:layout_marginRight="0.0px" android:layout_alignParentRight="true" />
</RelativeLayout>
</RelativeLayout>
5. lưu lại và compile6. Decompile UI vừa mới recompile tìm public
mở public.xml tìm 2 dòng này chú í phần id phía sau
<public type="drawable" name="leot_home_button" id="0x7f020xxx" />
<public type="drawable" name="leot_notif_button" id="0x7f020xxx" />
mở SenzuButton.smali
tìm
( const v3, 0x7f02009d )
thay thế id này 0x7f02009d bằng id ở dòng này <public type="drawable" name="leot_home_button" id="0x7f020xxx" />
tìm
( const v3, 0x7f02009e )
thay thế id này 0x7f02009e bằng id ở dòng này <public type="drawable" name="leot_notif_button" id="0x7f020xxx" />
7. Save, Compile
*GOOD LUCK
2layout_1buntom.zip
copecute File Size 23 KB