私はヒンディー語コンテンツ ベースの Android アプリを持っており、Android API 16 SDK の devangiri フォントを使用し、hindi.ttf という名前に変更しました。テキストは API レベル 16 および 17 では正常にレンダリングされますが、Android API レベル 15 以下では単純に引き裂かれます。
下位の API レベルのサポートを削除せずに修正できる理由はありますか。テキストビューを設定するための私のコードは次のとおりです。
import android.app.Activity;
import android.graphics.Paint;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.GestureDetector;
import android.widget.TextView;
public class Prayer extends Activity {
// TextSwitcher vs;
GestureDetector gestureDetector;
static Tips tip = null;
static StringBuilder quesString = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.prayer);
TextView tv1 = (TextView) findViewById(R.id.textView1);
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/hindi.ttf");
tv1.setTypeface(tf);
tv1.setText("श्री");
tv1.setPaintFlags(tv1.getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG);
}
}
レイアウト XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#C5C6E1"
tools:context=".Prayer" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</TextView>
</RelativeLayout>
現時点の:
期待される: