我有滑动窗格布局
<android.support.v4.widget.SlidingPaneLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/slidingPaneLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<fragment
android:id="@+id/first_fragment"
android:layout_width="@dimen/first_pane_width"
android:layout_height="match_parent"
android:layout_gravity="start"
class="com.example.example.FirstFragment"
tools:layout="@layout/fragment_first" />
<fragment
android:id="@+id/second_fragment"
android:layout_width="@dimen/second_pane_width"
android:layout_weight="1"
android:layout_height="match_parent"
class="com.example.example.SecondFragment"
tools:layout="@layout/fragment_second`enter code here`" />
</android.support.v4.widget.SlidingPaneLayout>
这是我的onCreate方法:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
slidingPaneLayout = (SlidingPaneLayout) findViewById(R.id.slidingPaneLayout);
slidingPaneLayout.setPanelSlideListener(this);
slidingPaneLayout.setParallaxDistance(PARALLAX_DISTANCE);
slidingPaneLayout.setShadowDrawable(getResources().getDrawable(R.drawable.shadow));
secondFragment = (SecondFragment) getFragmentManager().findFragmentById(R.id.second_fragment);
firstFragment = (FirstFragment) getFragmentManager().findFragmentById(R.id.first_fragment);
if (savedInstanceState == null) {
firstFragment.selectItem(0);
if (slidingPaneLayout.isSlideable()) {
slidingPaneLayout.openPane();
onPanelOpened(null);
}
}
if (slidingPaneLayout.isSlideable()) Log.d(TAG, "isSlideable");
但是slidingPaneLayout.isSlideable()总是返回false。 我试图在手机和模拟器(Nexus 7)上运行应用程序,但它总是返回相同的结果。 在调试模式下,mCanSlide变量(slidingPaneLayout对象)始终为false。
是的,有人告诉我,我做错了什么?感谢。答案 0 :(得分:0)
检查
isSlaydeble=false;
slidingPaneLayout = (SlidingPaneLayout) findViewById(R.id.dl_menu);
slidingPaneLayout.setPanelSlideListener(new SlidingPaneLayout.PanelSlideListener() {
@Override
public void onPanelSlide(View view, float v) {
isSlaydeble=true;
}
@Override
public void onPanelOpened(View view) {
}
@Override
public void onPanelClosed(View view) {
}
});
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.SlidingPaneLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dl_menu"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/lv_menu"
android:layout_width="240dp"
android:layout_gravity="left"
android:layout_height="match_parent"
android:background="#FFFFFF"
/>
<FrameLayout
android:id="@+id/fl_fragment_container"
android:layout_width="match_parent"
android:background="#0000FF"
android:layout_gravity="right"
android:layout_height="match_parent">
</FrameLayout>
</android.support.v4.widget.SlidingPaneLayout>