ich abstrahieren diese Methode. Es funktioniert, wenn das Zeichen links von der Textansicht dynamisch skaliert wird. Wenn ziehbar auf der rechten Seite ist, funktioniert diese Methode nicht funktioniert, benötigt warum, um herauszufinden, aber man kann direkt nur textView.setcompounddrawableswithintrinsicbounds()
verwenden, um mit der rechten Größe Drawable Ressource
@RequiresApi(api = Build.VERSION_CODES.HONEYCOMB)
public static void ajustCompoundDrawableSizeWithText(final TextView textView, final Drawable leftDrawable, final Drawable topDrawable, final Drawable rightDrawable, final Drawable bottomDrawable) {
textView.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
@Override
public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
if(leftDrawable != null){
leftDrawable.setBounds(0, 0, (int)textView.getTextSize(), (int)textView.getTextSize());
}
if(topDrawable != null){
topDrawable.setBounds(0, 0, (int)textView.getTextSize(), (int)textView.getTextSize());
}
if(rightDrawable != null){
rightDrawable.setBounds(0, 0, (int)textView.getTextSize(), (int)textView.getTextSize());
}
if(bottomDrawable != null){
bottomDrawable.setBounds(0, 0, (int)textView.getTextSize(), (int)textView.getTextSize());
}
textView.setCompoundDrawables(leftDrawable, topDrawable, rightDrawable, bottomDrawable);
textView.removeOnLayoutChangeListener(this);
}
});
}
ein QuoteSpan verwenden oder einen LeadingMarginSpan – pskink
ich versuchte quotespan es genial scheint, aber gibt es eine Möglichkeit, die Breite der Linie zu erhöhen? und wie man leadmarginspan benutzt? –