Verringern Sie drawableLeft und drawableRight's Höhe zu TextViews Höhe

Ich habe folgendes TextView :

 <TextView android:drawableLeft="@drawable/loading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Updating Rates" /> 

Und das Ergebnis ist:

  • Wie finde ich heraus, ob eine App auf SD-Karte auf Android verschoben wurde
  • Android 4.3: Wie man eine Verbindung zu mehreren Bluetooth Low Energy Geräten herstellt
  • Senden Sie Form-urlencoded Parameter in post Anfrage android volley
  • Lesen von RGB-Bildern mit einem ImageReader
  • Build-Fehler nach dem Hinzufügen von Crosswalk-Plugin zu einem Cordova Android-Projekt
  • Verbindung fehlgeschlagen: ECONNREFUSED
  • Wie mache ich den Ladekreis ziehbar proportional, so dass seine Höhe der Höhe des Textes entspricht?

    Auch, wenn möglich, möchte ich einen gewissen Abstand zwischen dem Text und dem Bild hinzufügen.

  • Die Installation kann aufgrund einer gegensätzlichen Abhängigkeit nicht abgeschlossen werden. Eclipse-Fehler für ADT
  • Android Studio erkennt keine Facebook-Importe
  • Android HttpsUrlConnection eofexception
  • Erfahren Sie mehr über Android-Interna (tauchen Sie tief in das System ein)
  • Build Error mit ndk jni für curl
  • Android - Beste Weg, um LocationListener über mehrere Aktivitäten zu implementieren
  • 5 Solutions collect form web for “Verringern Sie drawableLeft und drawableRight's Höhe zu TextViews Höhe”

    Um das loading kleiner zu machen, machen Sie einfach die Bilder kleiner.

    Oder verwenden Sie RelativeLayout und legen Sie das Laden in eine ImageView und skalieren Sie es.

    Oder du kannst Polsterung zwischen den Ziehbaren und dem Text mit android:drawablePadding (oder setCompoundDrawablePadding() ):

     android:drawablePadding="3dp" 

    Ich glaube, ich habe die Lösung gefunden, aber ein bisschen spät

     Drawable drawable = getResources().getDrawable(R.drawable.s_vit); drawable.setBounds(0, 0, (int)(drawable.getIntrinsicWidth()*0.5),(int)(drawable.getIntrinsicHeight()*0.5)); ScaleDrawable sd = new ScaleDrawable(drawable, 0, scaleWidth, scaleHeight); Button btn = findViewbyId(R.id.yourbtnID); btn.setCompoundDrawables(sd.getDrawable(), null, null, null); 

    Ravis Lösung hat für mich gearbeitet, aber auf manchen Geräten war es verschwunden. Dies wurde durch Entfernen der Skalierung behoben.

      int bound = (int) (drawable.getIntrinsicWidth() * 0.5); drawable.setBounds(0, 0, bound, bound); b.setCompoundDrawables(drawable, null, null, null); 

    Sie müssen nur zwei getrennte Ansichten Bildansicht und Textansicht zu erklären, und legen Sie sie entsprechend

    Eine bessere Lösung wird es schaffen, ein XML in Zeichnungsordner zu erstellen und das Bild zu diesem XML hinzuzufügen und scaleType als "fitXY" zu pflegen. Jetzt kannst du dieses XML als drawableLeft machen.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.