繁体   English   中英

在缩放时如何在UIView周围保持一致的2px边框?

[英]How to keep a consistent 2px border around a UIView when scaling it?

我有一个自定义UIView,可以根据UISlider的值进行缩放和旋转。 缩放效果很好,它很简单:

self.myView.transform = CGAffineTransformScale(CGAffineTransformIdentity, sx, sy);

我的UIView有一个2px的边框:

self.layer.borderColor = [UIColor whiteColor].CGColor;
self.layer.borderWidth = 2.0f;

但是,当我缩放视图时,边框的大小也会增大。 如何保持一致的边框忽略视图的比例?

当您更改视图缩放...时:

self.layer.borderWidth = 2.0f / scaleFactor;

缩放的目的和因此预期的行为是,2px帧可以与剩余视图一起放大或缩小。

您可以使用一个具有框架颜色的视图,并在顶部设置一个4px / 4px较小且位于2/2的视图,该视图仅显示没有框架的剩余视图。

然后相应地更改底层(框架)视图的框架。 然后相应地缩放子视图。 确保它保持居中或仍然从(2/2)开始。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM