[GUIDE][MOD]Add Quickpanel Button In Statusbar To Switch Layouts>>

Search This thread

san122

Senior Member
Jan 20, 2013
1,238
1,593
Unavailable.
Hello Guys,Hope everyone is fine

Today iam going to guide you how to add quickpanel button on statusbar to change layouts with cool sliding animation.

First of all this is not my work I would like to thank XDA Recognized Themer @b16h22 For allowing me to make this guide.


So lets start..


1. First of all download the attached files and merge with your SystemUI.apk
2. Now open statusbar.expanded and add these codes on the top lines anywhere where you want the switching button.
Code:
  <com.panel.Button android:id="@id/button" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
3 And then add this code anywhere..


Code:
       <com.panel.Panel android:id="@id/panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
                   <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                             Your First layout
             </LinearLayout>
                        <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                  Your Second Layout
 </LinearLayout>
</com.panel.Panel>


4.Now open ids.xml and add these in the last above resources .

Code:
  <item type="id" name="panel">false</item>
    <item type="id" name="button">false</item>

5.Recompile your SystemUI.apk.
6.Decompile it again.
7.Now open public.xml in values folder
8.Search for panel and copy its id
11.Now open Panel.smali in smali/com/panel/panel and search for 0x7f09004d and replace it with panel id .
12.Similarly,
13.Open public.xml in values folder
14.Search for button and copy its id
15.Now open Button.smali in smali/com/panel/Button and search for 0x7f09004e and replace it with Button id .
16.Also,
17.Open public.xml in values folder
18.Search for btn drawable and copy its id.
19.Now open Button.smali in smali/com/panel/Button and search for 0x7f020190 and replace it with btn id .


20.Now compile your SystemUI.apk
And done.


Screenshots
9ehe5u5u.jpg
8azugu6a.jpg
 

Attachments

  • quickpanel_btn.rar
    5.8 KB · Views: 4,771

princemouli

Senior Member
Sep 19, 2013
279
101
27
visakhapatnam
Got only switch but no quickpanel buttons ............ do i did some thing worng.:confused::confused::confused:
 

Attachments

  • 111.PNG
    111.PNG
    164.3 KB · Views: 1,186
  • 222.jpg
    222.jpg
    27.4 KB · Views: 1,075
  • SystemUI.apk
    1.6 MB · Views: 151
Last edited:
  • Like
Reactions: winny57

princemouli

Senior Member
Sep 19, 2013
279
101
27
visakhapatnam
Place to linearlayouts bw com.pane....
And
</com.panel.....>

Sent from my GT-S5360 using Tapatalk 2

brother still not working please check this....

Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.ExpandedView android:orientation="vertical" 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">
    <FrameLayout android:id="@id/toolBarSwitchPanel" android:background="@drawable/notification_header_bg" android:layout_width="fill_parent" android:layout_height="103.0dip">
        <include layout="@layout/zzz_toolbar_view" />
        <include layout="@layout/zzz_toolbar_indicator" />
    </FrameLayout>
    <View android:background="@drawable/status_bar_hr" android:layout_width="fill_parent" android:layout_height="2.0dip" />
    <RelativeLayout android:background="@drawable/notification_header_bg" android:paddingTop="3.0dip" android:paddingRight="3.0dip" android:paddingBottom="5.0dip" android:layout_width="fill_parent" android:layout_height="52.0dip">
        <com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Date" android:gravity="left|center" android:id="@id/date" android:paddingLeft="16.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:layout_alignParentLeft="true" />
        <ImageView android:id="@id/settings_button" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_notify_quicksettings" android:layout_toRightOf="@id/date" android:contentDescription="@string/accessibility_settings_button" />
        <ImageView android:id="@id/clear_all_button" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_notify_clear" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
		<com.panel.Button android:id="@id/button" android:paddingRight="8.0dip" android:paddingLeft="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" />
    </RelativeLayout>
    <View android:background="@drawable/status_bar_hr" android:layout_width="fill_parent" android:layout_height="2.0dip" />
    <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:paddingTop="20.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <in.jmkl.dcsms.statusbargreper.SlideBrightness android:layout_width="fill_parent" android:layout_height="wrap_content" />
    </LinearLayout>
	       <com.panel.Panel android:id="@id/panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
                   <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                             Your First layout
             </LinearLayout>
                        <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                  Your Second Layout
 </LinearLayout>
</com.panel.Panel>
    <FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
        <TextView android:textAppearance="@*android:style/TextAppearance.Large" android:gravity="left" android:layout_gravity="top" android:id="@id/noNotificationsTitle" android:padding="8.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" 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">
            <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
                <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>
        </ScrollView>
        <ImageView android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
    </FrameLayout>
</com.android.systemui.statusbar.phone.ExpandedView>[CODE]
[/CODE]
 

san122

Senior Member
Jan 20, 2013
1,238
1,593
Unavailable.
brother still not working please check this....

Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.ExpandedView android:orientation="vertical" 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">
    <FrameLayout android:id="@id/toolBarSwitchPanel" android:background="@drawable/notification_header_bg" android:layout_width="fill_parent" android:layout_height="103.0dip">
        <include layout="@layout/zzz_toolbar_view" />
        <include layout="@layout/zzz_toolbar_indicator" />
    </FrameLayout>
    <View android:background="@drawable/status_bar_hr" android:layout_width="fill_parent" android:layout_height="2.0dip" />
    <RelativeLayout android:background="@drawable/notification_header_bg" android:paddingTop="3.0dip" android:paddingRight="3.0dip" android:paddingBottom="5.0dip" android:layout_width="fill_parent" android:layout_height="52.0dip">
        <com.android.systemui.statusbar.policy.DateView android:textAppearance="@style/TextAppearance.StatusBar.Date" android:gravity="left|center" android:id="@id/date" android:paddingLeft="16.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:layout_alignParentLeft="true" />
        <ImageView android:id="@id/settings_button" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_notify_quicksettings" android:layout_toRightOf="@id/date" android:contentDescription="@string/accessibility_settings_button" />
        <ImageView android:id="@id/clear_all_button" android:paddingLeft="8.0dip" android:paddingRight="8.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/ic_notify_clear" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
<com.panel.Button android:id="@id/button" android:paddingRight="8.0dip" android:paddingLeft="8.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" />
    </RelativeLayout>
    <View android:background="@drawable/status_bar_hr" android:layout_width="fill_parent" android:layout_height="2.0dip" />
    <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:paddingTop="20.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
        <in.jmkl.dcsms.statusbargreper.SlideBrightness android:layout_width="fill_parent" android:layout_height="wrap_content" />
    </LinearLayout>
       <com.panel.Panel android:id="@id/panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
                   <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                             Your First layout
             </LinearLayout>
                        <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                  Your Second Layout
 </LinearLayout>
</com.panel.Panel>
    <FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
        <TextView android:textAppearance="@*android:style/TextAppearance.Large" android:gravity="left" android:layout_gravity="top" android:id="@id/noNotificationsTitle" android:padding="8.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" 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">
            <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
                <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>
        </ScrollView>
        <ImageView android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
    </FrameLayout>
</com.android.systemui.statusbar.phone.ExpandedView>[CODE]
[/CODE]

:eek:
Why dont you replaced Your first layout and your second layout.

Sent from my GT-S5360 using Tapatalk 2
 
  • Like
Reactions: princemouli

princemouli

Senior Member
Sep 19, 2013
279
101
27
visakhapatnam
Two linearlayouts which you want to fip in there.

Sent from my GT-S5360 using Tapatalk 2

hooo...
now i came to understand that means i should add icons and i should write the linear layouts for them... which i wanted in statusbar.....

please add this lines clearly to the op so that some others may not confuse like me........
and thanks nice guide..... i will say u the result tommarow
 

Top Liked Posts

  • There are no posts matching your filters.
  • 11
    Hello Guys,Hope everyone is fine

    Today iam going to guide you how to add quickpanel button on statusbar to change layouts with cool sliding animation.

    First of all this is not my work I would like to thank XDA Recognized Themer @b16h22 For allowing me to make this guide.


    So lets start..


    1. First of all download the attached files and merge with your SystemUI.apk
    2. Now open statusbar.expanded and add these codes on the top lines anywhere where you want the switching button.
    Code:
      <com.panel.Button android:id="@id/button" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
    3 And then add this code anywhere..


    Code:
           <com.panel.Panel android:id="@id/panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
                       <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                                 Your First layout
                 </LinearLayout>
                            <LinearLayout android:layout_width="wrap_content" android:layout_height="fill_parent">
                      Your Second Layout
     </LinearLayout>
    </com.panel.Panel>


    4.Now open ids.xml and add these in the last above resources .

    Code:
      <item type="id" name="panel">false</item>
        <item type="id" name="button">false</item>

    5.Recompile your SystemUI.apk.
    6.Decompile it again.
    7.Now open public.xml in values folder
    8.Search for panel and copy its id
    11.Now open Panel.smali in smali/com/panel/panel and search for 0x7f09004d and replace it with panel id .
    12.Similarly,
    13.Open public.xml in values folder
    14.Search for button and copy its id
    15.Now open Button.smali in smali/com/panel/Button and search for 0x7f09004e and replace it with Button id .
    16.Also,
    17.Open public.xml in values folder
    18.Search for btn drawable and copy its id.
    19.Now open Button.smali in smali/com/panel/Button and search for 0x7f020190 and replace it with btn id .


    20.Now compile your SystemUI.apk
    And done.


    Screenshots
    9ehe5u5u.jpg
    8azugu6a.jpg
    2
    recompiling problem after add ur smali files

    Make sure u have placed ids in the ids.xml in values folder.
    2
    YOU ROCK!!!

    This has got to be the simplest and fastest way to add a second layout on a GB Statusbar.

    Truly awesome work.

    I appreciate it very much!!

    :victory:
    2
    Finnaly fixed using apktool. But im still confused with classes.dex. Must we copy it if we use apktool ?

    Depends which version of apktool you're using. If you're using apktool 2, then no. If you're using a version of apktool 1, then it depends what you're doing to copy over the original signature.

    It's stuff like this that's why I use programs that do it all for me.

    Like Tickle My Android, for instance...;)
    2
    i got a icon for qucikpanal buttuns but no quickicons as shown in the screen shoots provided in the guide...
    for clear understanding see the screen shots i uploaded...

    Place to linearlayouts bw com.pane....
    And
    </com.panel.....>

    Sent from my GT-S5360 using Tapatalk 2