完全没有人碰过这种状况吗?
救救小弟啊!创了一个 values-zh-rTW 的资料夹,
也准备好了strings.xml中,
其他什么都没改,
开启程式时,因为小弟的手机是繁中的系统,
自动就切换成繁中的介面了,
可是在activity.xml中,
本来的TextView的属性中有设定文字样式为粗体的地方,
英文的时候有粗体效果  繁中却没有,
真的没人遇过吗?

解决方案 »

  1.   

    出现过这种情况 明明是设置一样的字体style 但英文却看起来更粗一点 应该是字体style还是没变 但显示出来就感觉不一样
      

  2.   

    感激两位的回答,有人理小的感觉真好。
    回#3,小弟从编辑XML的视窗中,
    直接打中文在预览中看粗体的效果是看得出来的,
    但执行在手机上就是没有,
    最明显的是斜体的部分,
    这个应该不会看不出来,
    结果执行后依然没有斜体效果,
    真的就像是字体效果完全不见了。
    小弟多加了两个按钮来切换语系的资源档,
    语法如下(另一个按钮只是第一行换成English):    Locale locale = Locale.TAIWAN;
        Locale.setDefault(locale);
        Configuration config = new Configuration();
        config.locale = locale;
        // Update Resource
        getResources().updateConfiguration(config, getResources().getDisplayMetrics());
        finish();
        // Restart Activity
        startActivity(getIntent());
    执行结果,语系可以成功切换,
    有趣的是切成英文时看的到粗体或斜体的效果,
    切成中文时就消失了,
    真的是见鬼了。不知道有写过多国语系支援的高手们有没有多做些时么步骤,
    有的话请给予小弟一些指点,
    小弟感激不尽。
      

  3.   

    感激两位的回答,有人理小的感觉真好。
    回#3,小弟从编辑XML的视窗中,
    直接打中文在预览中看粗体的效果是看得出来的,
    但执行在手机上就是没有,
    最明显的是斜体的部分,
    这个应该不会看不出来,
    结果执行后依然没有斜体效果,
    真的就像是字体效果完全不见了。
    小弟多加了两个按钮来切换语系的资源档,
    语法如下(另一个按钮只是第一行换成English):    Locale locale = Locale.TAIWAN;
        Locale.setDefault(locale);
        Configuration config = new Configuration();
        config.locale = locale;
        // Update Resource
        getResources().updateConfiguration(config, getResources().getDisplayMetrics());
        finish();
        // Restart Activity
        startActivity(getIntent());
    执行结果,语系可以成功切换,
    有趣的是切成英文时看的到粗体或斜体的效果,
    切成中文时就消失了,
    真的是见鬼了。不知道有写过多国语系支援的高手们有没有多做些时么步骤,
    有的话请给予小弟一些指点,
    小弟感激不尽。
    你是设了style还是直接写啊?
      

  4.   

    感激两位的回答,有人理小的感觉真好。
    回#3,小弟从编辑XML的视窗中,
    直接打中文在预览中看粗体的效果是看得出来的,
    ....
    你是设了style还是直接写啊?
    小弟只有在 layout 的XML中设置字体效果,
    其他完全都没碰字体设定,
    大概像这样:<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textSize="18sp"
    android:textStyle="bold"
    android:text="@string/text_connection"
    />
    所以切换的时候应该会保留字体效果才是,
    难道要写在程式码中?
      

  5.   

    感激两位的回答,有人理小的感觉真好。
    回#3,小弟从编辑XML的视窗中,
    直接打中文在预览中看粗体的效果是看得出来的,
    ....
    你是设了style还是直接写啊?
    小弟只有在 layout 的XML中设置字体效果,
    其他完全都没碰字体设定,
    大概像这样:<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textSize="18sp"
    android:textStyle="bold"
    android:text="@string/text_connection"
    />
    所以切换的时候应该会保留字体效果才是,
    难道要写在程式码中?感激两位的回答,有人理小的感觉真好。
    回#3,小弟从编辑XML的视窗中,
    直接打中文在预览中看粗体的效果是看得出来的,
    ....
    你是设了style还是直接写啊?
    小弟只有在 layout 的XML中设置字体效果,
    其他完全都没碰字体设定,
    大概像这样:<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textSize="18sp"
    android:textStyle="bold"
    android:text="@string/text_connection"
    />
    所以切换的时候应该会保留字体效果才是,
    难道要写在程式码中?
    找到答案了 看下一下你就懂了 要多准备各语言的xml http://tempsitegoogle.iteye.com/blog/1593737
      

  6.   

    感激Lee_shuo的帮忙,
    小弟建多国语系的方式其实没差多少,
    另外,小弟终于找到有一样情况的人了,
    他也写出了对应方式,
    小弟贴上关键处并附上原文网址。
    原文:http://www.cppblog.com/guojingjia2006/archive/2012/03/28/169336.aspx// 如何将TextView中的中文设置成粗体?
    // 在xml文件中使用android:textStyle="bold" 可以将英文设置成粗体,但是不能将中文设置成粗体,将中文设置成粗体的方法是:
    TextView tv = (TextView)findViewById(R.id.TextView01);
    TextPaint tp = tv.getPaint();
    tp.setFakeBoldText(true);
    // 其他还有:
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 24f);//设置成24sp 
    textView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//可能中文加粗无效
    textView.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC));//可能中文无效
    textView.setText(Html.fromHtml("<u>"+texts[i]+"</u>"));//下划线
    textView.setTypeface(Typeface.MONOSPACE,Typeface.ITALIC);//斜体,中文有效
    textView.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG );//中间加横线
    textView.getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG );//底部加横线