2013-03-01 43 views
58

Tôi đang phát triển một ứng dụng. Và tôi cần đặt biểu tượng đồng rupee của Ấn Độ trên chế độ xem văn bản được đặt với văn bản là số tiền.Đặt biểu tượng Rupee Ấn Độ ở chế độ xem văn bản

Symbol:

enter image description here

Tôi gặp font hoặc .ttf tập tin này trong Assets/thư mục phông chữ.

Và tôi đã cố gắng sử dụng nó như:

Typeface typeFace_Rupee = Typeface.createFromAsset(getAssets(),fonts/Rupee_Foradian.ttf"); 
TextView tvRupee = (TextView) findViewById(R.id.textview_rupee_mlsaa); 
tvRupee.setTypeface(typeFace_Rupee); 

// Tried to set symbol on text view as follows. 
tvRupee.setText("`"); 

Như trên thiết phông chữ tôi đã nhận lỗi con trỏ null.

Trong tệp từ sau khi chọn phông chữ và nhập `, chúng tôi có biểu tượng. nhưng nó không hoạt động trên Android.

Vì vậy, những gì bước tôi nên làm theo để làm điều này ...

+4

Đơn giản chỉ cần sử dụng "\ u20B9" trong chuỗi setText của bạn bất cứ nơi nào bạn muốn hiển thị biểu tượng –

+0

@Akbari Dipali tôi đã cố gắng "\ u20B9" nhưng nó cho thấy hộp trong văn bản sau khi chạy trên giả lập. Nhưng tại thiết kế bố trí trong GUI nó có vẻ tốt. –

+0

@Akbari Dipali Cảm ơn bạn. Nó không hoạt động trên Emulator nhưng tôi đã thử nghiệm nó trên thiết bị. Nó hoạt động tốt trên đó. –

Trả lời

137

enter image description here

Hi sử dụng này trong Strings

Để in rupee biểu tượng: <string name="Rs">\u20B9</string>

Để in Rs văn bản: <string name="rs">\u20A8</string>

+0

Tôi đã thử "\ u20B9" nhưng nó hiển thị hộp văn bản sau chạy trên trình giả lập. Nhưng tại thiết kế bố trí trong GUI nó có vẻ tốt. –

+0

Cảm ơn bạn. Nó không hoạt động trên Emulator nhưng tôi đã thử nghiệm nó trên thiết bị. Nó hoạt động tốt trên đó. –

+0

Bây giờ, hãy kiểm tra \ u20A8 một lần nữa khi đang hoạt động ... – androidgeek

10

Hãy thử điều này, Thay vì sử dụng Rupee_Foradian.ttfRupee.ttf nó sẽ làm việc. đang nhận biểu tượng tiền tệ.

Typeface tf = Typeface.createFromAsset(getAssets(), "font/Rupee.ttf"); 
textView1.setTypeface(tf); 
textView1.setText("`"); 
+0

câu trả lời gr8 !!!! giữ nó theo cách này. chẳng mấy chốc bạn sẽ lập trình android thành guru !!!! – AndroidEnthusiastic

+0

Tôi đã thêm cái này. Tôi nghĩ rằng bạn đã không đọc đúng câu hỏi của tôi đúng cách. Đọc mã và câu hỏi đúng cách. –

+0

@ManojFegde Thay vì Rupee_Foradian.ttf sử dụng Rupee.ttf nó sẽ hoạt động. tôi đã sửa bài đăng của tôi kiểm tra nó. cho tôi biết bất kỳ giải thích nào – MuraliGanesan

10

Sử dụng \u20B9 nếu bạn muốn in Rupee Symbol

Sử dụng \u20A8 nếu bạn muốn in "Rs"

+2

thử sử dụng https://gist.github.com/john1jan/a82912fb355771e565bea1720439c5dc. Nó tiền tố ký hiệu rupee và cho biết thậm chí cung cấp số tiền được phân tách bằng dấu phẩy – John

0

Hãy thử mã này đoạn mã nó làm việc tốt trong Xamarin.Forms

CultureInfo india = new CultureInfo ("hi-IN");

var rupeeSymbol = india.NumberFormat.CurrencySymbol;

0

sử dụng trên Adaptor

Viewholder.price.setText("Price: \u20B9"+dataAdapterOBJ.getPrice()); 
+1

Mặc dù mã này có thể trả lời một cách kỹ thuật câu hỏi mà bạn có thể sẽ giúp OP nhiều hơn nếu bạn giải thích tại sao mã của bạn giải quyết vấn đề của op – milo526

Các vấn đề liên quan