2017-11-21 12 views
7

textview의 서버 응답에서받은 텍스트를 표시해야하는 앱에서 작업하고 있습니다. 텍스트는 English or Hindi 일 수 있습니다. 힌디어의 경우 문자 중 일부는 물음표 (?)으로 바뀝니다. 여기서 문제는 무엇입니까? 이것은 내 텍스트를 설정하는 방법입니다. Android version 6. 글꼴힌디어 텍스트가 android에서 제대로 렌더링되지 않음

for (int i = 0; i < 3; i++) { 
viewHolder.lines[i].setText(poem.lines[i].lineText); 
} 

enter image description here

+5

처럼 UTF-8로 문자열을 변환하는 –

답변

-1

앱의 자산 폴더에있는 글꼴 폴더를 만들고 거기에 사용자 정의 글꼴을 배치 정기 프록시마 노바 Alt 키 타입 -.

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:fontFamily="NameOfYourCustomFonts"/> 
-1

다운로드 힌디어 글꼴 여기에서 : http://fonts.webtoolhub.com/font-n17979-kruti-dev-010.aspx

는 "자산"폴더에이 글꼴을 넣어 : 아래 그림과 같이 다음 텍스트 뷰에 속성의 font 설정 응용 프로그램/SRC/메인/자산/kruti-DEV -010.ttf

Typeface hindiFont = Typeface.createFromAsset(MainActivity.this.getAssets(), "fonts/Kruti_Dev_010.ttf"); 
    txtFont.setTypeface(hindiFont); 
    txtFont.setText("एनडीटीवी इंडिया : हिन्दी समाचार की आधिकारिक वेबसाइट"); 
2

질문에 따라 일부 글자는 올바르게 렌더링되고있는 반면 다른 글자는 제대로 렌더링되지 않은 것 같습니다. 분명히 글꼴 호환성 문제입니다. 맞춤 글꼴을 사용하려면 Android 버전에 맞는 새 글꼴을 다운로드하십시오.

그러나 많은 새로운 Android 기기 (특히 Android 6 이상)에서 힌디어가 기본적으로 지원됩니다. 따라서이 경우 휴대 전화의 Settings --> Language & input을 확인하십시오. 힌디어가 지원되면 힌디어로 앱의 로케일을 변경하면 제대로 작동합니다.

Configuration.Locale = new Locale("hi", "IN"); 
-1

시도는 나에게 힌디어 텍스트 샘플을 제공

viewHolder.lines[i].setText(URLDecoder.decode(poem.lines[i].lineText,"UTF-8"); 
관련 문제