14 Stimmen

Android - Schiebeschublade von links nach rechts gleiten lassen

Ich habe "Sliding Drawer" in meiner Anwendung mit dem unten stehenden XML-Layout implementiert: (Ich habe dieses Beispiel von androidpeople.com)

<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>

aber was ich will, ist die Schublade von links-nach-rechts (horizontal) anstelle dieser rechts-nach-links gleiten, wie mache ich gleiten Schublade von links-nach-rechts Richtung gleiten?

Bitte teilen Sie mir Ihre Idee/Ansicht/Meinung/Problem mit und helfen Sie mir aus diesem Problem heraus.

7voto

UpCat Punkte 67324

Hier finden Sie eine Anleitung dazu: Link

Es scheint, dass es keine Positionierung für Schubladen gibt, ich kann keine Layout-Attribute finden, die vom SDK bereitgestellt werden. Aber wie im obigen Tutorial könnten Sie Ihr eigenes Schubladen-Widget schreiben und Layout-Attribute anwenden, um den Schieberegler/Panel zu positionieren.


Sie können zur Kasse gehen https://github.com/umano/AndroidSlidingUpPanel

6voto

Girish R Punkte 69

Sie können dies für Schubladen von links nach rechts verwenden.

<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>

5voto

Hesam Punkte 49242

Die beste und einfachste Lösung ist das Hinzufügen einer Codezeile zu SlidingDrawer, android:rotation = "180" Weitere Informationen finden Sie unter dieser Link .

4voto

user123321 Punkte 12333

Die beste Antwort ist, diese Komponente zu verwenden, die sephiroth auf der Grundlage des ursprünglichen SlidingDrawer geschrieben hat: http://blog.sephiroth.it/2011/03/29/widget-slidingdrawer-top-to-bottom/

2voto

130nk3r5 Punkte 490

Ich habe die Antwort von Girish R. verwendet und sie einfach gedreht.... Funktioniert einwandfrei Außerdem habe ich ein Rahmenlayout verwendet, um sicherzustellen, dass es sich richtig öffnet....

<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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X