如何在彼此相对的两侧创建滑动抽屉?

时间:2012-12-19 11:01:47

标签: android android-layout slidingdrawer

我添加了从右到左完美滑动的代码,但我想从左向右滑动,所以检查布局并帮助我。我已经从右到左正确地提到了布局,是否可以得到两侧的Slider窗口,我的意思是水平左右......

     <?xml version="1.0" encoding="utf-8"?>
                    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
                          android:layout_width="fill_parent"
                            android:layout_height="fill_parent">
              <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                     android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:background="@drawable/bg"
         android:orientation="vertical" >
       <Button
        android:id="@+id/ship"
        android:layout_width="186dp"
        android:layout_height="23dp"
        android:layout_marginTop="49dp"
        android:background="@drawable/signup"
        android:text="Shipping Calculator"
        android:textColor="#ffffffff"
        android:layout_gravity="center"
        android:textStyle="bold" />

</LinearLayout>
<SlidingDrawer
  android:id="@+id/drawer"
  android:layout_width="match_parent"
     android:layout_height="match_parent"
  android:orientation="horizontal"
  android:handle="@+id/handle"
  android:content="@+id/content">
  <ImageView 
   android:id="@+id/handle"
   android:layout_width="wrap_content"
   android:layout_height="fill_parent" 
   android:src="@drawable/tag"/>

  <LinearLayout
      android:id="@+id/content"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:background="@drawable/slidimage"
      android:orientation="vertical"
      android:padding="10dp" >
 <TextView
            android:id="@+id/text1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginTop="15dp"
            android:layout_marginLeft="51dp"
            android:text="SIGN-UP"
            android:textColor="#000000"
            android:textSize="28dp"
            android:textStyle="bold" />

  </LinearLayout>
 </SlidingDrawer>
 <SlidingDrawer
  android:id="@+id/drawers"
  android:layout_width="match_parent"
     android:layout_height="match_parent"
   android:handle="@+id/handles"
  android:layout_gravity="left"
  android:scrollX="100dp"
  android:orientation="horizontal"
  android:content="@+id/contents">
  <ImageView 
   android:id="@+id/handles"
   android:layout_width="wrap_content"
   android:layout_height="fill_parent" 
    android:layout_gravity="left"
   android:src="@drawable/tag"/>

  <LinearLayout
      android:id="@+id/contents"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
       android:layout_gravity="left"
      android:background="@drawable/slidimage"
      android:orientation="vertical"
      android:padding="10dp" >
 <TextView
            android:id="@+id/text1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginTop="15dp"
            android:layout_marginLeft="51dp"
            android:text="SIGN-UP"
            android:textColor="#000000"
            android:textSize="28dp"
            android:textStyle="bold" />

            </LinearLayout>
 </SlidingDrawer> 

</FrameLayout>

2 个答案:

答案 0 :(得分:2)

我在这里得到了静态的答案它不可能创建滑动,我们不能使用android:rotation = 180,因为它会显示错误,因为没有找到资源,我们必须以编程方式创建它。需要添加视图在布局中。

如果单面使用小部件只是简单而不需要任何视图。但是当您想要在多个方向上滑动时需要视图。

<SlidingDrawer
  android:id="@+id/drawer"
  android:layout_width="match_parent"
     android:layout_height="match_parent"
  android:orientation="horizontal"
  android:handle="@+id/handle"
  android:content="@+id/content">
  <ImageView 
   android:id="@+id/handle"
   android:layout_width="wrap_content"
   android:layout_height="fill_parent" 
   android:src="@drawable/tag"/>

  <LinearLayout
      android:id="@+id/content"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:background="@drawable/slidimage"
      android:orientation="vertical"
      android:padding="10dp" >
 <TextView
            android:id="@+id/text1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginTop="15dp"
            android:layout_marginLeft="51dp"
            android:text="SIGN-UP"
            android:textColor="#000000"
            android:textSize="28dp"
            android:textStyle="bold" />

  </LinearLayout>
 </SlidingDrawer>

activity.java:

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.slider);

}

答案 1 :(得分:0)

我为SlidingDrawer创建了一个替换小部件,它适用于所有方向。见This answer