2012-03-31 1 views
2

Ich versuche ein Layout in Android zu implementieren, das aus mehreren TextView s und einigen Tasten besteht. Ich möchte eines der TextView s (das ist ein Protokoll des Spiels, das ich implementiere), um alle verfügbaren Platz zu nehmen, und es kann scrollbar sein, wenn es zu viel Text zum Anzeigen gibt. Allerdings kann ich es nicht darunter zu keinen Überlagerungsansichten scheinen, wenn es sich ausdehnt - stattdessen es am unteren Rand des Bildschirms zu stoppen:Eine TextView erweitern, ohne andere Ansichten abzudecken

enter image description here

In diesem Screenshot gibt es einen „Anzeiger“ Textview , eine "Hand" TextView, eine "Log" TextView und eine LinearLayout mit mehreren Buttons. Alle TextView s haben eine dynamische Länge, aber die ersten beiden sollten nicht mehr als ein paar Zeilen benötigen. Das Problem besteht darin, dass das Protokoll erweitert und die Schaltfläche darunter bedeckt (auf der Plusseite ist es scrollbar). Kannst du mir zeigen, wie ich das beheben kann?

Hier ist das Layout XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/scoreboard" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:text="Scoreboard" /> 

    <TextView 
     android:id="@+id/handinfo" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/scoreboard" 
     android:text="Hand" /> 

    <LinearLayout 
     android:id="@+id/linearLayout1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" > 

     <Button 
      android:id="@+id/stay" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:enabled="false" 
      android:text="Stay" /> 

     <Button 
      android:id="@+id/leave" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:enabled="false" 
      android:text="Leave" /> 

     <Button 
      android:id="@+id/pay" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:enabled="false" 
      android:text="Pay" /> 

     <Button 
      android:id="@+id/payWithWild" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:enabled="false" 
      android:text="Pay Wild" /> 

     <Button 
      android:id="@+id/dontPay" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:enabled="false" 
      android:text="Don&apos;t Pay" /> 
    </LinearLayout> 

    <ScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/handinfo" > 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/log" 
      android:text="" /> 

    </ScrollView> 



</RelativeLayout> 

Antwort

4

Fügen Sie die folgenden Attribute zu Ihrem ScrollView und es sollte das Display beheben:

android:layout_below="@id/handinfo" 
android:layout_above="@id/linearLayout1" 
+0

So einfach. Es funktioniert, danke! –