Button Hintergrund Größe

  • 7 Antworten
  • Letztes Antwortdatum
T

tom_tom_2401

Neues Mitglied
2
Hallo

Ich schreib gerade an einer App, die einen Auswahlbildschrim besitzt. Das ganze sind mehrere Buttons untereinander und hier möchte ich bei jedem Button links einen Text und rechts ein kleines Icon.

Ich habs mit folgendem Code soweit geschafft, dass der Text links angezeigt wird und rechts das Bild. Dieses ist jedoch zu groß und ich möchte es kleiner anzeigen, will aber nicht das Icon im Photoshop runter skalieren, da es an mehreren Stellen der App, in verschiedenen Größen eingebaut wird.
Code:
<Button
        android:id="@+id/b_stufe1"
        android:layout_width="@dimen/b_stufe_width"
        android:layout_height="@dimen/b_stufe_height"
        android:layout_below="@+id/Header"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="28dp"
        android:gravity="left|center_vertical"
        android:text="@string/b_stufe_1"
        android:drawableRight="@drawable/ico_stufe1" />
Was muss ich hier hinzufügen?

Danke schon mal und Grüße
Thomas
 
Hi,

wusste gar nicht das es drawableRight gibt :D
Am einfachsten wäre es, wenn du das ganze in ein Layout packst und einfach aus einem Button ein Button+ImageView machst. Dort kannst du dann geziehlt die höhe und breite des Bildes angeben.

Auf ein Problem wirst du aber stoßen:
In Android gibt es tausend verschiedene Display auflösungen. Deshalb ist zu raten mit "dp" zu arbeiten. Dabei wird aber dein Bild wiederum entsprechend größer. Deshalb gibt es auch die sogenannten 9-PNG's...

Der Untere Teil ist aber erstmal nur zur anregung. Keine Ahnung wie weit du mit der Programmierung bist und inwiefern du das brauchst... Der Erste Teil sollte dein problem schon lösen...

Gruß
 
Hey,

du kannst auch einfach Grafiken in Buttonform mit den Icons und Texten und dann ImageViews als Buttons verwenden.

speichern = (ImageView) findViewById(R.id.safe);

speichern.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//whatever
}
}

Funktioniert einwandfrei und du bist nicht an die Formen gebunden.
 
Und dann wären wir wieder beim 9-PNG ;)
 
Hab ich übersehen -.-
;)
 
StefMa schrieb:
Am einfachsten wäre es, wenn du das ganze in ein Layout packst und einfach aus einem Button ein Button+ImageView machst. Dort kannst du dann geziehlt die höhe und breite des Bildes angeben.
Gruß

Wie soll ich ds machen? Einfach ein ImageView über den Button setzen?

dp verwend ich ohnehin schon ;)

Die reine Grafikversion wäre die letzte Möglichkeit, es sind doch einige Buttons und somit viel Speicher der mit Text verschwendet wird.

Grüße Thomas
 
Ja... einfach im layout.. :o
 
Danke, hat funktioniert :)

Jetzt wollte ich auch noch einen Layout Hintergund machen, einfach ein png-Bild. In der grafischen Ansicht von Eclipse wird der Hintergrund angezeigt, am Handy aber nicht. Was soll ich da machen?

Code:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@drawable/hg"
    tools:context=".MainActivity$WelcomeScreen">

Auch hier hab ich versucht, ein Image View zu machen, funktioniert auch nicht...

grüße Thomas
 
Zurück
Oben Unten