2016-01-27 9 views
6

Ich arbeite an Android-Anwendung und ich versuche arabische Zahl innerhalb arabische Ende des Ayah-Symbols (۝) in Textview schreiben. Ich habe versucht, das Ende von Ayah Symbol dann die arabische Zahl ohne Leerzeichen zu schreiben, aber es hat nicht funktioniert. Ich benutze Uthmani Schriftart.schreibe Nummer in Ayah Ende Arabisch Unicode-Symbol

ich es, wie dieses Bild angezeigt werden soll:

Dieser Teil des Codes ist

NumberFormat nf = NumberFormat.getInstance(Locale.forLanguageTag("AR")); 
    temp+=" "+"\u06DD"+String.valueOf(nf.format(count))+" "; 

"\ u06DD" ist die Codierung von (۝) in Java.

Das Ergebnis wurde wie folgt aus:

+1

Salem wie wäre es mit einem textView mit dem Symbol der Ayah als Hintergrund. –

Antwort

0

Sie können ReplacementSpan verwenden zu verändern, wie die Aya Zahl

zum Beispiel gemacht wird dies, wie ich es tat

public class EndOfAyaSpan extends ReplacementSpan 
{ 

    public RoundedBackgroundSpan(Context context) 
    { 
     super(); 
    } 

    @Override 
    public void draw(Canvas canvas, CharSequence text, int start, int end, float x, int top, int y, int bottom, Paint paint) 
    { 
     float textSize = paint.getTextSize(); 
     canvas.drawText("\u06dd ", 0, 1, x - textSize/5, (float) y, paint); 
     paint.setTextSize(textSize - textSize/3); 
     canvas.drawText(text, start, end, x, y - textSize/5, paint); 
     paint.setTextSize(textSize); 
    } 

    @Override 
    public int getSize(Paint paint, CharSequence text, int start, int end, Paint.FontMetricsInt fm) 
    { 
     return Math.round(paint.measureText(text, start, end)); 
    } 

} 
1

Sie können die Schriftart me_quran mit diesen Unicodes verwenden U + FD3E + Zahlen + U + FD3F

﴿ ORNATE RIGHT PARENTHESIS Unicode: U+FD3F, UTF-8: EF B4 BF 

﴾ ORNATE LEFT PARENTHESIS Unicode: U+FD3E, UTF-8: EF B4 BE 

You can download the font file from here

Anwendungsbeispiel: Quran Verse end with numbers inside

1

Probieren Sie etwas wie dieses ﴾١٩٦﴿ die wie & # xFD3E aussieht; 196 & # xFD3F;