2012-04-02 10 views
1

Was ich

Ich versuche, um eine Layout gleich den nächsten Link erreichen will: http://www.flickr.com/photos/[email protected]/7038207573/Android-Layout, wie zwei Bilder zu positionieren und ein seekbar

Was ich habe

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:contentDescription="@string/minVolume" 
     android:src="@drawable/ic_volume_min" /> 

    <SeekBar 
     android:id="@+id/seekBar1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:contentDescription="@string/maxVolume" 
     android:src="@drawable/ic_volume_max" /> 
</LinearLayout> 

das Ergebnis Ich bekomme mit diesem Code, dass die Suchleiste über das rechte Symbol erstreckt.

  • Ich möchte es in geeigneter Weise auf verschiedenen screenszes skaliert haben
  • Wenn sein möglich, ohne das Gewicht Attribut, würde ich diese Lösung lieben

irgendwelche Ratschläge

Antwort

1

ein relatives Layout machen verwenden und das linke Bild auf der linken Seite (ALIGN_PARENT_LEFT), das rechte Bild auf der rechten Seite (ALIGN_PARENT_RIGHT) und der Anker verankert machen seekbar zwischen ihnen mit android: layout_toRightOf und android: layout_toLeftOf.

Für weitere Informationen siehe die Dokumentation: http://developer.android.com/reference/android/widget/RelativeLayout.html

+0

Dies war die beste Lösung in meiner Meinung, was ich suchte, thx Moss – Tobrun

+0

@ user1281750 schön es half! – Moss

0

Wenn Sie zu schätzen wissen setze layout_width für alle drei Widgets auf 0 und gewichte auf 1 für die Suchleiste, die funktionieren sollte. Ich weiß nicht, wie das zu tun, ohne Gewicht (und warum?)

+0

Danke für die Beantwortung, wirklich wie Ihr Ansatz. der grund, warum ich ohne gewicht gefragt habe, war zu sehen, was andere möglichkeiten für das auslegen eines layouts wären;) – Tobrun

+0

Warum sind andere Wege nötig, wenn das so funktioniert? –

0

die WINDOW Verwenden Sie die Größe zu erhalten und stellen Sie dann mit Hilfe von Operatoren wie ‚/‘ usw.,

Display display = getWindowManager().getDefaultDisplay(); 
int height = display.getHeight(); 
int width = display.getWidth(); 

Obwohl ich neuere API glauben ist in Kraft getreten.

3

Verwenden Sie android:layout_weight="0.9" in SeekBar. oder

Without layout_weight

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 
    <ImageView 
     android:id="@+id/left" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:contentDescription="@string/minVolume" 
     android:src="@drawable/ic_volume_min" />  
    <ImageView 
     android:id="@+id/right" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:contentDescription="@string/maxVolume" 
     android:src="@drawable/ic_volume_max" 
     android:layout_alignParentRight="true" />  
    <SeekBar 
     android:id="@+id/seekBar1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@+id/left" 
     android:layout_centerVertical="true" 
     android:layout_toLeftOf="@+id/right" />  
</RelativeLayout> 
+0

@ user1281750 Wenn Sie keine Antwort erhalten haben, überprüfen Sie meine aktualisierte Antwort, es kann Ihnen helfen. –

Verwandte Themen