Android 放大和缩小按钮

Android 放大和缩小按钮,android,button,Android,Button,我为放大和缩小按钮编写了这段代码; 他们用错误的算法工作。它们都会增大尺寸!?虽然我说每次点击平滑地增加0.01f,但是随着点击它们的大小增加了50%,它变得太大了,这就是我的问题 final TextView rbc = (TextView) findViewById(R.id.rbc); rbc.setText(R.string.start); sizeup.setOnClickListener(new OnClickListener() { @Override

我为放大和缩小按钮编写了这段代码; 他们用错误的算法工作。它们都会增大尺寸!?虽然我说每次点击平滑地增加0.01f,但是随着点击它们的大小增加了50%,它变得太大了,这就是我的问题

final TextView rbc = (TextView) findViewById(R.id.rbc);
rbc.setText(R.string.start);
sizeup.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            float textsize = rbc.getTextSize();
            textsize += 0.05f;
            rbc.setTextSize(textsize);

        }
    });
    sizedown.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            float textsize = rbc.getTextSize();
            textsize -= 0.05f;
            rbc.setTextSize(textsize);

        }
    });

混合单元问题。默认方法setTextSizefloat假定您输入的是sp单位缩放像素,而getTextSize方法返回精确的像素大小

您应该使用以下选项:

this.setTextSize(TypedValue.COMPLEX_UNIT_PX, size);

这将确保您使用相同的设备。

我不明白!你能解释更多吗?而不是rbc.setTextSizetextsize;使用rbc.setTextSizeTypedValue.COMPLEX_UNIT_PX,textsize;在两个听众中。最新版本使用textsize作为px像素单位,这是从rbc.getTextSize获得的