1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. stonecold, 15.01.2011 #1
    stonecold

    stonecold Threadstarter Neuer Benutzer

    Hallo,

    leider hatte noch niemand einen Tipp wie ich mein Problem von gestern lösen kann. Ich habe zu folgendem Codebeispiel mal eine Frage:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <TableLayout
        android:id="@+id/table_widget"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        xmlns:android="http://schemas.android.com/apk/res/android"
    >    
        <TableRow
            android:id="@+id/widget_top"
            android:layout_width="fill_parent"
            android:layout_height="128dp"
            android:background="@color/blue"
            android:orientation="horizontal"
        >
            
        </TableRow>
        
        <TableRow
            android:id="@+id/widget_bottom"
            android:layout_width="fill_parent"
            android:layout_height="32dp"
            android:background="@color/red"
            android:orientation="horizontal"
        >  
        </TableRow>
        
    </TableLayout>
    
    Eigentlich hätte ich beim Starten der Activity erwartet, dass sich mein Bildschirm in 2 Teile aufteilt und zwar im Verhältnis 128/32. Der obere Teil sollte blau, der untere rot sein. Leider sehe ich nur ein schwarzes Bild. Wenn ich jeweils einen Button einfüge, erscheinen diese in den TableRows allerdings nicht in der angegebenen Höhe (siehe Anhang).

    Ich hoffe ich habe mich verständlich ausgedrückt.

    Gruß,
    Mario
     

    Anhänge:

    Zuletzt bearbeitet: 15.01.2011
  2. tobbbbi, 15.01.2011 #2
    tobbbbi

    tobbbbi Junior Mitglied

    Also ein TableLayout ist hier glaub ich nicht das Richtige. In deinem Beispiel passt sich eine Row einfach der Größes des beinhalteten Views (hier Button) an. Leider kann man die Größe der Row auch nicht so einfach einstellen.

    Probiere es daher doch einfach mal mit verschachtelten LinearLayouts.

    Für jede Farbe/Button (=row) in deinem Beispiel machst du ein eigenes LinearLayout. Diese setzt du dann auf die gewünschten Größen.

    Also zB. so:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
        android:layout_height="fill_parent"
        android:layout_width="fill_parent"
        android:orientation="vertical"
        xmlns:android="http://schemas.android.com/apk/res/android" >    
         
         <LinearLayout
            android:layout_height="350dp"
            android:layout_width="fill_parent"
            android:background="@color/blue"
            android:orientation="horizontal" >
        
            <Button
                   android:text="Button A"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
            />
        </LinearLayout>
         
         <LinearLayout
            android:layout_height="fill_parent"
            android:layout_width="fill_parent"
            android:background="@color/red"
            android:orientation="horizontal" >
            
            <Button 
                android:text="Button B"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
            />
         </LinearLayout>
               
    </LinearLayout>
    Die Größenrelationen der beiden "Rows" zueinander kannst du nun über die Höhenparameter der beiden inneren LinearLayouts ganz flexibel einstellen.
    In meinem Beispiel ist die erste auf 350dp eingestellt und die zweite nimmt über den Parameter height="fill_parent" die restliche Fläche ein.
    Somit kannst du steuern wieviel Platz des Bildschirms jede "Row" im Verhältnis einnehmen soll. Auch wie sich die Buttons innerhalb der "Rows" verhalten sollen, ist nun frei festlegbar.

    Ich hoffe, dass ich dein Problem richtig verstanden habe und du es mit dieser Lösung hinkriegen kannst.
     
    stonecold gefällt das.
  3. stonecold, 16.01.2011 #3
    stonecold

    stonecold Threadstarter Neuer Benutzer

    Wow tobbbbi, Danke!
    Das ist genau wonach ich gesucht habe.

    Vielleicht kannst du mir noch eine andere Frage beantworten.
    Soweit ich weiß ist nutzt man die Größenangaben in dp bzw. dip um Auflösungsunabhängig arbeiten zu können!???

    Was genau wird für die Displays in vertikaler (bzw. horizontaler) Richtung denn als Höhe angenommen? Bei mir sieht es so aus, als wären es 480dp. Trifft das jetzt auf alle Auflösungen zu?

    Danke und Gruß,
    Mario
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Bitmap von Activity an Activity übergben Android App Entwicklung 03.09.2017
[OFFEN] Activity als Dialog - RecyclerView funktioniert nicht mehr Android App Entwicklung 14.08.2017
[OFFEN] Problem mit meiner Login App Android App Entwicklung 10.06.2017
[GELÖST] Nach AS Update Fehler Error running app: Default Activity not found Android App Entwicklung 16.05.2017
[GELÖST] Übergabe an zweite Activity Android App Entwicklung 11.05.2017
[ERLEDIGT] Problem beim Starten einer neuen Activity Android App Entwicklung 21.03.2017
Intent mit Daten (putExtra) zu anderer Activity Android App Entwicklung 14.02.2017
Bestätigungsdialog in der Activity Android App Entwicklung 19.12.2016
Online-Kalender in einem Fragment/einer Activity Android App Entwicklung 17.11.2016
Fehler in der Activity Android App Entwicklung 15.11.2016
Du betrachtest das Thema "Aufteilung der Activity II" im Forum "Android App Entwicklung",