yoyocx

Slide Menu Kanan dan Kiri

Sep 7th, 2015
310
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 4.14 KB | None | 0 0
  1. ========================================= Slide Menu Kanan dan Kiri ===========================================
  2.  
  3. 1. Fitur ini untuk yang sudah menggunakan PreferenceActivity
  4.  
  5.     ================================= KODE A ==================================
  6.  
  7.  
  8.     .line 823
  9.     const v0, 0x7f03005a
  10.  
  11.     invoke-virtual {p0, v0}, Lcom/bbm/ui/activities/MainActivity;->setContentView(I)V
  12.  
  13.  
  14.  
  15.     ================================= KODE B ==================================
  16.  
  17.  
  18.     .line 36
  19.     invoke-direct {p0}, Lcom/bbm/ui/activities/MainActivity;->setContent()V
  20.  
  21.  
  22.  
  23.     ================================= KODE C ==================================
  24.  
  25.  
  26. .method public getID(Ljava/lang/String;Ljava/lang/String;)I
  27.     .locals 2
  28.     .param p1, "name"    # Ljava/lang/String;
  29.     .param p2, "Type"    # Ljava/lang/String;
  30.  
  31.     .prologue
  32.     .line 105
  33.     invoke-virtual {p0}, Lcom/bbm/ui/activities/MainActivity;->getBaseContext()Landroid/content/Context;
  34.  
  35.     move-result-object v0
  36.  
  37.     invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
  38.  
  39.     move-result-object v0
  40.  
  41.     invoke-virtual {p0}, Lcom/bbm/ui/activities/MainActivity;->getBaseContext()Landroid/content/Context;
  42.  
  43.     move-result-object v1
  44.  
  45.     invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
  46.  
  47.     move-result-object v1
  48.  
  49.     invoke-virtual {v0, p1, p2, v1}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
  50.  
  51.     move-result v0
  52.  
  53.     return v0
  54. .end method
  55.  
  56.  
  57.     ================================= KODE D ==================================
  58.  
  59. .method private setContent()V
  60.     .locals 3
  61.  
  62.     .prologue
  63.     .line 47
  64.     invoke-static {p0}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences;
  65.  
  66.     move-result-object v0
  67.  
  68.     .line 48
  69.     .local v0, "sharedPreferences":Landroid/content/SharedPreferences;
  70.     const-string v1, "pref_layout_position"
  71.  
  72.     const/4 v2, 0x0
  73.  
  74.     invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
  75.  
  76.     move-result v1
  77.  
  78.     if-eqz v1, :cond_0
  79.  
  80.     .line 49
  81.     const-string v1, "activity_main_right"
  82.  
  83.     const-string v2, "layout"
  84.  
  85.     invoke-virtual {p0, v1, v2}, Lcom/bbm/ui/activities/MainActivity;->getID(Ljava/lang/String;Ljava/lang/String;)I
  86.  
  87.     move-result v1
  88.  
  89.     invoke-virtual {p0, v1}, Lcom/bbm/ui/activities/MainActivity;->setContentView(I)V
  90.  
  91.     .line 52
  92.     :goto_0
  93.     return-void
  94.  
  95.     .line 51
  96.     :cond_0
  97.     const-string v1, "activity_main"
  98.  
  99.     const-string v2, "layout"
  100.  
  101.     invoke-virtual {p0, v1, v2}, Lcom/bbm/ui/activities/MainActivity;->getID(Ljava/lang/String;Ljava/lang/String;)I
  102.  
  103.     move-result v1
  104.  
  105.     invoke-virtual {p0, v1}, Lcom/bbm/ui/activities/MainActivity;->setContentView(I)V
  106.  
  107.     goto :goto_0
  108. .end method
  109.  
  110.  
  111. ************************************************************************************************************************************
  112.  
  113. 2. Duplikat layout activity_main.xml dan rename menjadi activity_main_right.xml
  114.  
  115. 3. Buka layout activity_main_right.xml dan edit kode berikut android:layout_gravity="start" menjadi android:layout_gravity="end" di ListView nya contoh :
  116.  
  117.     <ListView android:layout_gravity="end" android:orientation="vertical" android:id="@id/drawer_items_list" android:background="@color/delta_bg" android:saveEnabled="false" android:clipToPadding="false" android:layout_width="@dimen/navigation_drawer_max_width" android:layout_height="fill_parent" android:divider="@null" android:choiceMode="singleChoice" />
  118.  
  119. 4. Buka MainActivity.smali cari KODE A dan ganti dengan KODE B
  120.  
  121. 5. Tambahkan KODE C di dalam/bawah # virtual methods
  122.  
  123. 6. Tambahkan KODE D di dalam/bawah # direct methods
  124.  
  125. 7. Buka xml preferencenya contoh delta_preference.xml tambahkan kode berikut di dalamnya
  126.  
  127.         <CheckBoxPreference android:icon="@drawable/delta_default" android:title="Sliding Menu Position" android:key="pref_layout_position" android:defaultValue="false" android:summaryOn="Right" android:summaryOff="Left" />
  128.  
  129.  
  130. 8. Recompile, Sign, Install
Advertisement
Add Comment
Please, Sign In to add comment