不同的输出4.0.3
问题描述:
我有建一些简单的应用程序,它包含一个TextView的两个按钮不同的输出4.0.3
,并在编程我有发现有ID和更改TEXTSIZE的按钮,点击按如下。
Button btn1,btn2;
TextView txtmain;
txtmain=(TextView)findViewById(R.id.textView1);
btn1=(Button)findViewById(R.id.button1);
btn2=(Button)findViewById(R.id.button2);
txtmain.setBackgroundColor(Color.YELLOW);
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
txtmain.setTextSize(30);
}
});
btn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
txtmain.setTextSize(100);
}
});
所以输出是如下当我点击BTN2 TEXTSIZE是100,当我选择的TextView大小为30,但在Android操作系统4.0.3输出是从其它操作系统非常不同。
Button1的Click输出屏幕
BUTTON2点击输出屏幕
再次Button1的Click不匹配输出按按钮1点击图像
所以请帮助我如何解决这个问题,这是一个简单的演示。这是任何操作系统相关的问题,因为除了Android操作系统4.0.3它运行完美。
答
看到下面的链接。
https://code.google.com/p/android/issues/detail?id=17343
这是Android冰淇淋三明治问题。
解决此问题在文本中添加额外的空格字符结尾。
例如:
final String DOUBLE_BYTE_WORDJOINER = "\u2060";
txtmain=(TextView)findViewById(R.id.textView1);
txtmain.setTextSize(TypedValue.COMPLEX_UNIT_SP ,30);
txtmain.append(DOUBLE_BYTE_WORDJOINER);
检查在所有的操作系统? – Hemant 2013-05-07 11:47:35
嘿,我已经检查了所有操作系统的问题是在Android操作系统版本4.0.3。 – 2013-05-07 11:49:17
只是在按钮的onClick上重新初始化txtmain的LayoutParams。 – bakriOnFire 2013-05-07 12:09:06