Wie Lösen Form rund Rechteck zu groß ist, um dargestellt werden zu einer textur in android TextBox
Ich Eine Form erstellen für die Text-Ansicht Hintergrund
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#800e1520"
android:endColor="#801e252f"
android:angle="45"/>
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<corners android:radius="8dp" />
und meine textview ist :
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/rel1"
android:layout_centerHorizontal="true"
android:layout_marginTop="8dp"
android:background="@drawable/rounded_corners"
android:gravity="right"
android:lineSpacingExtra="6dp"
android:supportsRtl="true"
android:text="@string/hello_world"
android:textColor="#FFFFFF" />
wenn der text kurz ist wie dieser
aber wenn der text zu groß ist, zeigt nicht hintergrund und eclipse logcat anzeigen
Shape round rect too large to be rendered into a texture (424x5884, max=2048x2048)
wie es zu lösen?
danke
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meine Lösung ist zum zeichnen auf dem canvas. Siehe unten.
Wenn Sie tun müssen, gradents etc, dann schauen
Shader
's, https://developer.android.com/reference/android/graphics/LinearGradient.htmlSollte tun, was Sie brauchen es zu.
Edit: Die einfachste Lösung ist, um loszuwerden, der an den Ecken abgerundet. Wenn Sie entfernen die abgerundeten Ecken und mit einem einfachen Rechteck, das hardware-renderer nicht mehr einer einzigen großen textur für den hintergrund-Ebene, und wird nicht ausgeführt in die textur Größenbeschränkung mehr.
Einen einfachen workaround sollte werden, um wiederherstellen von software-rendering für diese Ansicht:
...aber wir haben ein ähnliches problem hier und wir kamen auf das selbe Ergebnis hast du, die Ansicht (und seine Kinder) nicht Rendern.
Können Sie auch den layer-Typ einer Ansicht aus XML:
Einstellung der layerType auf "none" anstatt software zu verursachen scheint der Ansicht zu zeichnen, aber es zog, ohne die abgerundeten Ecken in einem schnell-test, den wir gleich ausprobiert.
Ein anderer Ansatz könnte die Verwendung einer anderen Methode zum Rendern des abgerundeten Rechtecks, z.B.
onDraw
PaintDrawable
(die unterstützt, abgerundete Ecken, aber muss festgelegt werden, von code)Könnten Sie auch versuchen, Ihren hintergrund .9.png