2011-10-17 118 views
6

我正在開發Android平板電腦中的應用程序。現在在我的應用程序中,我想顯示所有的印地文文本EditText按鈕並且我還需要從Oracle數據庫獲取數據並需要存儲在Sqlite我如何在Android平板電腦上顯示HIndi文本

我知道如何保存和檢索Sqlite中的數據,但只需要在android中顯示印地文文本。

我已經籤How to show Hindi text in android? 但需要清楚的知道我應該擁有的資產和價值的文件夾,即印地文字體保存..

某些單詞無法正確顯示。任何人都可以向我建議在印地文中正確顯示所有單詞的文件(印地語字體)嗎?

+0

可能重複後[如何顯示在Android的印地文文本?](http://stackoverflow.com/questions/5857502/how在Android中) – cHao

回答

4

您的自定義應用程序,你很可能會想使用自己的字體。這篇文章將告訴你如何做到這一點。 這是一個簡單的例子...在您的項目的根目錄中創建一個名爲assets/fonts /的文件夾,然後粘貼TTF字體文件(在本例中爲Verdana.ttf)。然後,如果你想申請的是字體,說一個TextView,請執行下列操作

TextView im = (TextView) findViewById(R.id.im); 
Typeface face=Typeface.createFromAsset(getAssets(), 
              "fonts/hindi.ttf"); 
     im.setTypeface(face); 
     im.setText("Hindi font"); 
+0

我下載了vijyapati.ttf文件並添加到了資源中的字體文件夾中,但是我沒有爲我的TextView獲取印地文字體我正在獲取僅矩形框 –

+0

我已更新它 –

+0

通過放置mangal.ttf我得到了印地語字體的TextView,感謝您的幫助Dr.nik有沒有機會ge t鍵盤字符在印地文... –

0

Android手機,如果您安裝了印地文(梵文)字體 - 然後你會看到的字符,但字母字形不會加入或形成正確的連詞,所以除了最簡單的文字以外都是不可讀的。這是由於Android手機缺乏適當的複雜文本佈局(CTL)或渲染支持 - 我不知道Android平板電腦的情況是否更好。

不幸的是,Indic文本甚至在Android 4.0(ICS)仿真器中都不能正常工作,即使它本來應該在那裏修復。

1

你可以使用Unicode ......對於कख

TextView tv=(TextView)findViewById(R.id.textViewmyView); 

final Typeface tf = Typeface.createFromAsset(this.getAssets(), "Hindi-SARAL1.TTF"); 

tv.setText(Html.fromHtml("&# 2325;&# 2326;")); 

tv.setTypeface(tf); 

使用Unicode值繼續無間隙....

此代碼工作的印地文字母表所有除。क्ष,त्र和ज्ञ 爲此,您可以使用......

爲क्ष: - tv.setText("9");

爲त्र: - tv.setText("5");

和ज्ञ: - tv.setText(")");

的是

tv.setTypeface(tf); 
+0

當我在模擬器中測試時,它不工作。但在真正的設備上它正在工作。它是否適用於每個設備? ? – Dory

+0

是的,它將適用於所有設備 – kaml

相關問題