- Forum-Beiträge: 1
08.03.2016, 12:55:56 via Website
08.03.2016 12:55:56 via Website
Ich bin noch Anfänger und probier gerade ein wenig rum mit Android Studio.
Ich habe nun ein Problem mit ImageButton. Und zwar wird das ganze derzeit für ein 4,7 Zoll Display entworfen!
Wie bekommt man das hin das sich die Größe der Button sich anpassen. Sprich wenn das ganze auf nem kleineren Display läuft die Buttons im verhältniss auch kleiner sind und bei größerem größer.
Also so sieht das derzeit aus:
ausgerichtet auf ein 4,7 Zoll Display
Der untere weiße teil ist in 5 gleich große Lineare Layout unterteilt.
im 2. und 4. Layout befinden sich die Buttons
wenn ich die Display grösse nun ändere z.b. auf 3,7 Zoll verkleiner dann kann man beim oberen Button sehen das am unteren ende des Buttons was fehlt weil der Button größer ist als 1/5 des Displays
vergrößer ich da Display auf 7 Zoll dann sind die Buttons zwar vollständig aber vom verhältnis Displaygrösse/Buttongrösse wirken die zu klein.
der code sieht wie folgt aus:
<
?xml version="1.0" encoding="utf-8"?>
RelativeLayout xmlns:android="schemas.android.com/apk/res/android"
`<
a
ndroid:layout_width="match_parent" android:layout_height="match_parent">`
<include
android:id="@id/inctopbar"
android:layout_width="fill_parent"
android:layout_height="45.0dip"
layout="@layout/topbar" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/inctopbar"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:measureWithLargestChild="false">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal">
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal">
<ImageButton
android:layout_width="100dp"
android:layout_height="100dp"
android:id="@+id/imageButton"
android:background="@drawable/konfiguration"
android:clickable="true"
android:onClick="Konfiguration"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal">
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal">
<ImageButton
android:layout_width="100dp"
android:layout_height="100dp"
android:id="@+id/imageButton2"
android:background="@drawable/startbutton"
android:clickable="true"
android:onClick="Start"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal">
</LinearLayout>
</LinearLayout>
ich weiß das ich die buttons mit den codezeilen
android:layout_width="100dp"
android:layout_height="100dp"
auch auf die größe des linearen layouts anpassen kann
z.b. mit fill_parent/match_parent/wrap_content
wenn ich das bei android:layout_height= eintrage dann passt sich die höhe bei Display vergrößerung/verkleinerung dem linearen layout an.
wenn ich das ganze aber bei android:layout_width= eintrage passt sich der button bei veränderung auch dem linearen layout an, aber der button ist dann über das gesamte display gestreckt.
mir geht es jetzt darum ob man da was eintragen kann das im prinzip android:layout_width = android:layout_height.
So würde sich der button der displaygröße ja anpassen und quadratisch bleiben statt gestreckt zu werden.
— geändert am 08.03.2016, 23:41:56
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.