Java SlidingPaneLayout isSlideable()方法不起作用
我有滑动窗格布局Java SlidingPaneLayout isSlideable()方法不起作用,java,android,slidingpanelayout,Java,Android,Slidingpanelayout,我有滑动窗格布局 <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.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>
但是slidengpanelayout.isSlideable始终返回false。
我尝试在手机和模拟器Nexus7上运行该应用程序,但它总是返回相同的结果。
在调试模式下,slidingPaneLayout对象的mCanSlide变量始终为false
谁能告诉我我做错了什么?谢谢。请检查
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>
我想你是在打电话。这是一个很快就能解决的问题。尝试使用viewtreeobserver检查布局过程是否完成,并应用该方法
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>