【问题标题】:How to create sliding drawer in both sides opposite to one another?如何在相对的两侧创建滑动抽屉?
【发布时间】:2012-12-19 11:01:46
【问题描述】:

我已经添加了从右到左完美滑动的代码,但我也想从左到右滑动,所以请检查布局并帮助我。这里我已经正确地提到了从右到左的布局,是否可以在两侧获取 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>

【问题讨论】:

    标签: android android-layout slidingdrawer


    【解决方案1】:

    我在这里得到了静态的答案,它并不完全可以创建滑动,我们不能使用 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);
    
    }
    

    【讨论】:

    • 谢谢,这个解决方案对我来说很好,但我需要从左到右的方向,解决方案是从右到左滑动,有什么解决方案吗?
    • @Muhannad yes..因此请查看以下链接seasonofrejoice.blogspot.in/2013/01/…
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多