1

我正在尝试dropdown在我的monodroid应用程序中显示货币符号。

如您所知,货币单位包含“र”之类的内容。但是当我运行应用程序时,下拉菜单只显示一个矩形而不是“र”。

我怎样才能使它可读?

编辑

实际上,我解析了这个 json 以访问该单元(将 name 属性保存到字符串变量):

{"id":"167","name":"\u0930","type":"4","enabled":"1","tosi":"0.0182","index":"1","extra":"INR","extra2":"Indian Rupee","extra3":"India","extra4":"Paisa","seperator":",","d_seperator":"","after_before":"0"},

当我解析它时,在运行时字符串变量包括“र”,但是当我在下拉列表中显示它时,设备会显示一个框。

所以根据'Sam'评论我使用这个代码。我将字符串变量传递给方法并将返回字符串显示给下拉菜单。但我看到一个盒子:(

    public static string ConvertUnitsEncoding(Activity act,string Encoded){
        try {
            if( Encoded =="र")
                return act. Resources .GetString(Resource .String .IndianUnit );
            else
                return Encoded ;
        } catch (Exception ex) {
            RltLog .HandleException (ex);
            return Encoded ;
        }
    }
4

1 回答 1

1

你有两个选择:

  • 加载包含该特殊字符的自定义字体:

    TextView tv = (TextView)findViewById(R.id.tv);
    // Put the font in the asset folder
    Typeface tf = Typeface.createFromAsset(Context.Assets, "Symbol.ttf");
    tv.setTypeface(tf);
    

    Windows 上安装的大多数字体都有一个货币子集,其中包括货币符号但不包括卢比。我在某处读到 Microsoft Update 会将卢比添加到字体中,但我的系统上没有。我找到了支持卢比的Amty Currency 字体,但我不确定它对您的情况有多大用处。试试看。

  • 或者只是为此目的使用一个小图像。我更喜欢这种方法,因为它独立于平台,你可以在那里找到很多符号图标。像这样的东西:

    Android 下拉钱图标

于 2013-05-17T20:42:11.807 回答