我正在写阿拉伯语 - 土耳其语的字典。我想通过spannable制作丰富多彩的变音符号。这是工作但变音符号'垂直对齐变化。这是我的布局。
<TextView
android:layout_width="match_parent"
android:layout_alignParentTop="true"
android:layout_toLeftOf="@+id/ivFavori"
android:layout_toStartOf="@+id/ivFavori"
android:id="@+id/tvHeader"
android:onClick="@{() -> handlers.onHeaderClick(arapcaModel)}"
android:bufferType="spannable"
android:text="@{arapcaModel.lemma.formatted}"
tools:text="أُخْرُجْ"
android:layout_weight="1"
android:layout_height="match_parent"
android:textAppearance="@style/TextAppearance.AppCompat.SearchResult.Title"
android:gravity="right|center_vertical"
android:textSize="22sp"
android:paddingTop="10dp"
android:paddingBottom="4dp" />
这就是我将变音符号变得丰富多彩的代码。
public void setFormat(){
String birlesik=lemma_vocalized + " - " + lemma_mfiil + " - " + lemma_emir + " - " + lemma_masdar + " - " + lemma_kok;
formatted=new SpannableString(birlesik);
formatted.setSpan(new
Pattern mPattern = Pattern.compile("([ً-ٟ])");
Matcher matcher = mPattern.matcher(birlesik);
while (matcher.find()) {
int start = matcher.start();
int end = matcher.end();
formatted.setSpan(new ForegroundColorSpan(Color.rgb(255,0,0)), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
If I comment this function result is like this.
我该如何解决这个问题?