我需要在android中创建自定义文本视图,首先它应该是对齐,然后它应该支持跨度和虽然它应该支持ex:Farsi(波斯语)的 RTL (从右到左)语言,...
我正在研究这个问题一个星期!但事实上我陷入困境,因为没有可用的库支持所有这些条件( Justify , Spanable , RTL )
您有什么想法 ?!
我虽然为ex:Link
检查了很多库答案 0 :(得分:1)
您可以使用this。
该包是专门为Right-ToLeft和Justified Textviews创建的,应该支持Spannable,因为它是TextView的扩展。
答案 1 :(得分:1)
此代码适用于我的 rtl textView :
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
textView.setJustificationMode(LineBreaker.JUSTIFICATION_MODE_INTER_WORD);
}else {
textView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
textView.setGravity(Gravity.CENTER_HORIZONTAL);
}
答案 2 :(得分:0)
如何证明范围 RTL TextView
?
首先使用此库RTL-TextJustify-Android
然后在将文本设置为TextView
之前:
TextViewEx = myJustifiedTextView;
myJustifiedTextView = findViewById...........;
finalDescription = "";
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
finalDescription = Html.fromHtml(SpanTextHere, Html.FROM_HTML_MODE_COMPACT).toString();
} else {
finalDescription = Html.fromHtml(SpanTextHere).toString();
}
myJustifiedTextView.setText(finalDescription,true);
答案 3 :(得分:-1)
尝试将android:supportsRtl="true"
添加到清单文件中的<application>
元素并更改您的应用&#34;左/右&#34;布局属性为新&#34;开始/结束&#34;。
有关详细信息,请参阅this链接。