在Android上缩放缩放Textview时,会无意中裁剪文本

时间:2013-06-17 05:53:12

标签: android textview zoom pinch

我们开发自定义文本视图,放大/缩小取决于捏合手势,并能够调整文本视图和缩放文本的大小。但是,当缩小此视图时,文本会被无意中裁剪。

我们写了这样的代码。

1.获取手势监听器中的缩放值和onDraw()中的postScale

2.按布局计算新的视图大小(int,int,int,int)

    @Override
public void onDraw(Canvas canvas) {         

    android.graphics.Matrix m = new android.graphics.Matrix();          
    m.postScale(mScaleFactor, mScaleFactor);    
    canvas.concat(m);
    layout((int) l, (int) t, (int)r , (int) b );

    super.onDraw(canvas);
}

1 个答案:

答案 0 :(得分:0)

这对您来说可能不是完美的解决方案,但您可以尝试一下。

1)检测捏手势

2)计算比例因子(您可以手动执行,也可以使用ScaleDetector类)

3)使用LayoutParams 实际调整您的文本视图。

4)然而,它不会缩放文本大小,但您可以通过编程方式与缩放手势相对应。

如果您有任何问题可以随意发表评论,我之前已经完成了,但需求略有不同。