0

我已经构建了一些简单的应用程序,其中包含一个文本视图和两个按钮

并且在程序化中,我找到了 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 os 4.0.3 中输出与其他操作系统非常不同时,输出如下所示。

button1 点击输出画面button1 点击和 textview 大小为 30 所以输出

button2 点击输出画面btton2 click 和 textview 大小为 100 所以输出

再次按 button1 点击图片的 button1 点击不匹配输出在此处输入图像描述

所以请帮助我如何解决这个问题这是一个简单的演示。这是任何与操作系统相关的问题吗,因为除了 android os 4.0.3 它运行完美。

4

1 回答 1

0

请参阅以下链接。

https://code.google.com/p/android/issues/detail?id=17343

这是安卓冰淇淋三明治问题。

解决此问题在文本末尾添加额外的间距字符。

例子:

final String DOUBLE_BYTE_WORDJOINER = "\u2060";
txtmain=(TextView)findViewById(R.id.textView1);
txtmain.setTextSize(TypedValue.COMPLEX_UNIT_SP ,30);
txtmain.append(DOUBLE_BYTE_WORDJOINER);
于 2013-05-09T07:11:04.477 回答