代码之家  ›  专栏  ›  技术社区  ›  Paresh Mayani jeet

安卓-使滑动抽屉从左到右滑动

  •  13
  • Paresh Mayani jeet  · 技术社区  · 14 年前

    我在应用程序中使用以下XML布局实现了“滑动抽屉”:

    <LinearLayout android:id="@+id/LinearLayout01"
     android:layout_width="fill_parent" android:layout_height="fill_parent"
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:background="@drawable/androidpeople">
    
     <SlidingDrawer 
      android:layout_width="wrap_content" 
      android:id="@+id/SlidingDrawer" 
      android:handle="@+id/slideHandleButton" 
      android:content="@+id/contentLayout" 
      android:layout_height="75dip"
      android:orientation="horizontal">
    
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/slideHandleButton" 
       android:background="@drawable/closearrow">
      </Button>
    
      <LinearLayout 
       android:layout_width="wrap_content" 
       android:id="@+id/contentLayout" 
       android:orientation="horizontal" 
       android:gravity="center|top" 
       android:padding="10dip" 
       android:background="#C0C0C0" 
       android:layout_height="wrap_content">
    
    
       <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Content"></Button>
       <Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Content"></Button>
       <Button android:id="@+id/Button03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Content"></Button>
    
      </LinearLayout>
    
     </SlidingDrawer>
    </LinearLayout>
    

    但是我想要的是从左到右(水平)滑动抽屉,而不是从右到左,我如何使滑动抽屉从左到右方向滑动?

    5 回复  |  直到 6 年前
        1
  •  7
  •   DarkLeafyGreen    9 年前

    以下是关于此的教程: link

    似乎没有滑动抽屉的定位,我找不到sdk提供的任何布局属性。但是就像上面的教程一样,您可以编写自己的滑动抽屉小部件并应用布局属性来定位滑块/面板。


    你可以结账 https://github.com/umano/AndroidSlidingUpPanel

        2
  •  6
  •   Paresh Mayani jeet    12 年前

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView 
    android:layout_width="50dip"
    android:layout_height="50dip"
    android:text="@string/hello"
    />
    <SlidingDrawer
     android:id="@+id/drawer"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:orientation="horizontal"
     android:handle="@+id/handle"     
     android:content="@+id/content">
    
    
    <ImageView
     android:id="@id/handle"
     android:layout_width="50dip"
     android:layout_height="50dip"  
     android:src="@drawable/icon"
    />
    
    <LinearLayout
     android:id="@id/content"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:orientation="vertical">
    <Button
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:text="Big Big Button"/>
    </LinearLayout>
    
    </SlidingDrawer>
    </LinearLayout>
    
        3
  •  5
  •   Community CDub    7 年前

    最好且简单的解决方案是在SlidingDrawer中添加一行代码, android:rotation = "180" 有关更多信息,请参阅 this link

        4
  •  4
  •   user123321    12 年前

    最好的答案是使用sephiroth基于原始SlidingDrawer编写的组件: http://blog.sephiroth.it/2011/03/29/widget-slidingdrawer-top-to-bottom/

        5
  •  2
  •   130nk3r5    10 年前

    我用了Girish R的答案然后旋转了一下。。。。很有魅力

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
    
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <SlidingDrawer
            android:id="@+id/drawer"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:handle="@+id/handle"
            android:rotation="180"
            android:content="@+id/content">
    
    
            <ImageView
                android:id="@id/handle"
                android:layout_width="50dip"
                android:layout_height="50dip"
                android:src="@drawable/ic_launcher"
                android:rotation="180"
                />
    
            <LinearLayout
                android:id="@id/content"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:orientation="vertical"
                android:rotation="180">
                <Button
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:text="Big Big Button"/>
            </LinearLayout>
        </SlidingDrawer>
        <TextView
            android:layout_width="50dip"
            android:layout_height="50dip"
            android:text="HELLO WORLD"
            />
    
    </FrameLayout>
    

    SlidingDrawer from left to right

    推荐文章