How to Custom Transisi ViewPager
How to Custom Transisi ViewPager - Hallo sobat Jogja Android Blog, Pada Artikel yang sobat baca kali ini dengan judul How to Custom Transisi ViewPager, kami telah mempersiapkan artikel ini dengan baik untuk sobat baca dan ambil informasi didalamnya. Mudah-mudahan isi postingan How to Custom Transisi ViewPager yang kami tulis ini dapat sobat Jogja Android Blog pahami. Baiklah, selamat membaca sambil menikmati kopi.
Khusus buat yang udah make View Pager
=====
Bahan - bahan :
1. Apk Tool
2. 920 Text Editor
3. Smali.zip [Download]
4. ZamPageTrans.apk [Download]
- Extract smali.zip
- Install ZamPageTrans.apk
PhoneStatusBar.smali
dari atas ke bawah
=====
# static fields
.field private static final TRANSFORM_CLASSES:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList",
"<",
"Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;",
">;"
}
.end annotation
.end field
======
# direct methods
.method static constructor <clinit>()V
.locals 3
.prologue
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
sput-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/DefaultTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/AccordionTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/BackgroundToForegroundTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/CubeInTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/CubeOutTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/DepthPageTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/FadeTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/FlipHorizontalTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/FlipVerticalTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/ForegroundToBackgroundTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/RotateDownTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/RotateUpTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/StackTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/TabletTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/ZoomInTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/ZoomOutTranformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;
const-class v2, Lcom/zam/viewpager/transformer/ZoomOutSlideTransformer;
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$TransformerItem;-><init>(Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
=====
.method static synthetic access$40000()Ljava/util/ArrayList;
.locals 1
.prologue
.line 46
sget-object v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->TRANSFORM_CLASSES:Ljava/util/ArrayList;
return-object v0
.end method
=====
yang ini taro di atas -->> .method private setupStatusBarExpandedViewPager()V
.method private setTransisi()V
.locals 6
.prologue
iget-object v0, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
.local v0, context:Landroid/content/Context;
new-instance v3, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$Zam1;
invoke-direct {v3, p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$Zam1;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)V
.local v3, sReceiver:Landroid/content/BroadcastReceiver;
new-instance v2, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$Zam2;
invoke-direct {v2, p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$Zam2;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)V
.local v2, mReceiver:Landroid/content/BroadcastReceiver;
new-instance v4, Landroid/content/IntentFilter;
const-string v5, "com.zam.viewpager.transformer.GANTI_TRANSISI"
invoke-direct {v4, v5}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v2, v4}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
new-instance v1, Landroid/content/IntentFilter;
invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
.local v1, fil:Landroid/content/IntentFilter;
const-string v4, "android.intent.action.MEDIA_MOUNTED"
invoke-virtual {v1, v4}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
const-string v4, "android.intent.action.MEDIA_SCANNER_FINISHED"
invoke-virtual {v1, v4}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
const-string v4, "file"
invoke-virtual {v1, v4}, Landroid/content/IntentFilter;->addDataScheme(Ljava/lang/String;)V
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
return-void
.end method
compare ini,
terutama yang saya kasih tanda "<!-- -->"
.method private setupStatusBarExpandedViewPager()V
.locals 7
.prologue
const/4 v5, 0x0
const/4 v4, 0x0
.line 44
iget-object v2, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
const-string v3, "layout_inflater"
invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/view/LayoutInflater;
.local v1, inflater:Landroid/view/LayoutInflater;
iget-object v2, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
const v3, 0x7f030035
invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getLayout(I)Landroid/content/res/XmlResourceParser;
move-result-object v2
invoke-virtual {v1, v2, v4}, Landroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;)Landroid/view/View;
move-result-object v2
iput-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mTabNotificationsLayout:Landroid/view/View;
iget-object v2, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
const v3, 0x7f030036
invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getLayout(I)Landroid/content/res/XmlResourceParser;
move-result-object v2
invoke-virtual {v1, v2, v4}, Landroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;)Landroid/view/View;
move-result-object v2
iput-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mTabForLidroidLayout:Landroid/view/View;
iget-object v2, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
const v3, 0x7f030037
invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getLayout(I)Landroid/content/res/XmlResourceParser;
move-result-object v2
invoke-virtual {v1, v2, v4}, Landroid/view/LayoutInflater;->inflate(Lorg/xmlpull/v1/XmlPullParser;Landroid/view/ViewGroup;)Landroid/view/View;
move-result-object v2
iput-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mTabForSliderLayout:Landroid/view/View;
new-instance v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$ExpandedPagerAdapter;
invoke-direct {v0, p0, v4}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$ExpandedPagerAdapter;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Lcom/android/systemui/statusbar/phone/PhoneStatusBar$ExpandedPagerAdapter;)V
.local v0, expandedPagerAdapter:Lcom/android/systemui/statusbar/phone/PhoneStatusBar$ExpandedPagerAdapter;
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNotificationPanel:Landroid/view/View;
const v3, 0x7f0c00e1
invoke-virtual {v2, v3}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v2
check-cast v2, Lcom/serajr/viewpager/CustomViewPager;
iput-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPager:Lcom/serajr/viewpager/CustomViewPager;
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPager:Lcom/serajr/viewpager/CustomViewPager;
invoke-virtual {v2, v0}, Lcom/serajr/viewpager/CustomViewPager;->setAdapter(Landroid/support/v4/view/PagerAdapter;)V
<!--
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPager:Lcom/serajr/viewpager/CustomViewPager;
new-instance v3, Lcom/zam/viewpager/transformer/SetTransformer;
sget-object v4, Lcom/zam/viewpager/transformer/SetTransformer$TransformType;->Default:Lcom/zam/viewpager/transformer/SetTransformer$TransformType;
invoke-direct {v3, v4}, Lcom/zam/viewpager/transformer/SetTransformer;-><init>(Lcom/zam/viewpager/transformer/SetTransformer$TransformType;)V
invoke-virtual {v2, v5, v3}, Lcom/serajr/viewpager/CustomViewPager;->setPageTransformer(ZLandroid/support/v4/view/ViewPager$PageTransformer;)V
-->
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPager:Lcom/serajr/viewpager/CustomViewPager;
const/4 v3, 0x0
invoke-virtual {v2, v3}, Lcom/serajr/viewpager/CustomViewPager;->setCurrentItem(I)V
<!--
invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->setTransisi()V
-->
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPager:Lcom/serajr/viewpager/CustomViewPager;
new-instance v3, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$45;
invoke-direct {v3, p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$45;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)V
invoke-virtual {v2, v3}, Lcom/serajr/viewpager/CustomViewPager;->setOnPageChangeListener(Landroid/support/v4/view/ViewPager$OnPageChangeListener;)V
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNotificationPanel:Landroid/view/View;
const v3, 0x7f0c00e2
invoke-virtual {v2, v3}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v2
check-cast v2, Landroid/support/v4/view/PagerTabStrip;
iput-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPagerTabStrip:Landroid/support/v4/view/PagerTabStrip;
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPagerTabStrip:Landroid/support/v4/view/PagerTabStrip;
const/4 v3, 0x1
invoke-virtual {v2, v3}, Landroid/support/v4/view/PagerTabStrip;->setDrawFullUnderline(Z)V
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedViewPagerTabStrip:Landroid/support/v4/view/PagerTabStrip;
iget-object v3, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v3
const v4, 0x7f070006
invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getColor(I)I
move-result v3
invoke-virtual {v2, v3}, Landroid/support/v4/view/PagerTabStrip;->setTabIndicatorColor(I)V
return-void
.end method
===
NOTE:
1. Buat manggil apk popup list animasi :
--> Kalo udah pake method onClick, tinggal tambahin kode ini di header atau di layout expanded mana aja :
<ImageView android:src="@drawable/ic_action_favorite" android:background="@drawable/bingkai_bulet" android:layout_gravity="center" android:id="@+id/tombol_transformer" android:layout_width="38.0dip" android:layout_height="38.0dip" android:tag="com.zam.pagetrans,com.zam.pagetrans.PilihTransisi" android:onClick="onClickPanelMethod" />
keterangan :
android:src="@drawable/ic_action_favorite"<-- ganti pake gambar yg ada aja
android:background="@drawable/bingkai_bulet"<-- ini juga ganti ama yang ada, atau hapus aja
android:layout_gravity="center"<-- sesuaikan
android:layout_width="38.0dip"<-- sesuaikan
android:layout_height="38.0dip"<-- sesuaikan
--> kalo ngga pake method onClick, bongkar ZamPageTrans.apk, edit AndroidManifest.xml,
<category android:name="android.intent.category.DEFAULT"/>
ganti jadi
<category android:name="android.intent.category.LAUNCHER"/>
ntar apk-nya muncul di launcher
2. Cari ini :
(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)Lcom/serajr/viewpager/CustomViewPager;
bakal ketemu line ini:
.method static synthetic access$xxxxxx(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)Lcom/serajr/viewpager/CustomViewPager;
perhatikan nilai access$xxxxxx,
selanjutnya buka dulu ->PhoneStatusBar$Zam1.smali
cari ini : access$66000 <-- data-blogger-escaped-66000="" data-blogger-escaped-:="" data-blogger-escaped-access="" data-blogger-escaped-ama="" data-blogger-escaped-diganti="" data-blogger-escaped-ganti="" data-blogger-escaped-kalo="" data-blogger-escaped-ngga="" data-blogger-escaped-nilai="" data-blogger-escaped-sama="" data-blogger-escaped-udah="" data-blogger-escaped-usah="" data-blogger-escaped-xxxxxx="" data-blogger-escaped-ya="">
begitu juga di PhoneStatusBar$Zam2.smali
3. Udah..
BUG : di beberapa kasus yang pake custom layout fliper kadang ngaco ketika di tap
Big thanks:
Adi Sukahadi for base tutor
Serajr for code
google.develover.android.com for source animation
All Admin & mastah MAAAD reborn
Demikian Artikel dengan judul How to Custom Transisi ViewPager
Mudah-mudahan bisa memberi manfaat untuk sobat Jogja Android Blog semua. Baiklah, sampai jumpa di postingan artikel lainnya.
Sobat Jogja Android Blog sekarang membaca artikel How to Custom Transisi ViewPager dengan alamat link https://jogjandroidz.blogspot.com/2014/12/how-to-custom-transisi-viewpager.html
0 Response to "How to Custom Transisi ViewPager"
Post a Comment