Ana bölmede bir kenar boşluğu ve çapraz solma için özel dinleyici ile SlidingPaneLayout
kullanabilirsiniz. onFinishInflate
içinde
<com.sqisland.android.CrossFadeSlidingPaneLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/sliding_pane_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="240dp"
android:layout_height="match_parent"
android:background="@color/purple">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/full"/>
<TextView
android:layout_width="64dp"
android:layout_height="match_parent"
android:background="@color/blue"
android:text="@string/partial"/>
</FrameLayout>
<TextView
android:layout_width="400dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_marginLeft="64dp"
android:background="@color/light_blue"
android:text="@string/pane_2"/>
</com.sqisland.android.CrossFadeSlidingPaneLayout>
Alt Sınıf SlidingPaneLayout
kısmi ve tam bölmeleri bulmak: Ayrıca
private SimplePanelSlideListener crossFadeListener
= new SimplePanelSlideListener() {
public void onPanelSlide(View panel, float slideOffset) {
super.onPanelSlide(panel, slideOffset);
if (partialView == null || fullView == null) {
return;
}
partialView.setVisibility(isOpen() ? View.GONE : VISIBLE);
partialView.setAlpha(1 - slideOffset);
fullView.setAlpha(slideOffset);
}
};
gizlemek:
protected void onFinishInflate() {
super.onFinishInflate();
if (getChildCount() < 1) {
return;
}
View panel = getChildAt(0);
if (!(panel instanceof ViewGroup)) {
return;
}
ViewGroup viewGroup = (ViewGroup) panel;
if (viewGroup.getChildCount() != 2) {
return;
}
fullView = viewGroup.getChildAt(0);
partialView = viewGroup.getChildAt(1);
super.setPanelSlideListener(crossFadeListener);
}
değiştirme bir dinleyici tam bölmede ve kısmi bölmesinin alfa düzen açıldığında kısmi bölme.
protected void onLayout(
boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);
if (partialView != null) {
partialView.setVisibility(isOpen() ? View.GONE : VISIBLE);
}
}
diğer bilgiler: http://blog.sqisland.com/2015/01/partial-slidingpanelayout.html
bunun için, http panelini kaydırarak kullanabilirsiniz yoktur: // www.incredibleandros.com/slidingpanel-android-example/ –
@TusharPandey Cevabınız için teşekkür ederiz. Bu benim hatam, daha önce soruyu açıklayamadım. Şimdi tekrar düzenledim. Bu davranışın Navigasyon Çekmecesi gibi olmasını istiyorum. Lütfen ikinci resmi düşün ve bana yardım et. –
Bu yeni malzeme tasarımı Navigasyon çekmeceli ToolBar, https: //chris.banes.me/2014/10/17/appcompat-v21/ –