调整scrollViewDidZoom中所有子视图的大小

希塔斯

下面是我的屏幕设计。

在此处输入图片说明

我想要Zoom in/out in **mainView**. mainView Width & Height is 300.放大/缩小,我已经实现了以下方法,并且可以正常使用。

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return mainView;
}

一切都很好。我已scroll.minimumZoomScale=1scroll.maximumZoomScale=5

在放大时间mainView Frame increase depend on **scrollView.zoomScale**,我已经检查- (void)scrollViewDidZoom:(UIScrollView *)scrollView了这种方法。

在放大时间

**if i get scrollView.zoomScale=2 than mainView Width & height become 600
if i get scrollView.zoomScale=3 than mainView Width & height become 900**

在此过程中,innerView由于具有autoresize属性,因此调整大小。但是innerView的Width和Height为100(在放大/缩小时不变)。

我们可以根据规模更改它吗?

最后,我想要什么,只要innerViewlblTest框架的变化,比我想增加/减少numberOfLinelblTestzoom in/out时间。

我尝试手动添加innerViewlblTest,但遇到的问题是其宽度和高度的增加幅度大于其superview(mainView)。

非常感谢,如果有什么知道如何存档。

提前致谢。

善意的

在滚动视图中缩放时,zoomViewmainView根据您的情况)不会调整大小,只是对其图层(CALayer进行仿射变换例如在1.2 zoomScale的情况下是:[1.2, 0, 0, 1.2, 0, 0]因此它的范围不会改变-只是所有内容都按比例放大/缩小,它也会影响它的frame属性-所包含的内部视图也不会改变,并且标签也会被调整大小,渲染mainView时只是按比例放大/缩小,这就是为什么框架不受影响。

只需- (void)scrollViewDidZoom:(UIScrollView *)scrollView在委托中实施并打印出主视图frame, bounds, layer.affineTransform即可查看缩放发生的情况。

要制作您想要的东西,您必须根据以下内容调整标签zoomScale

- (void)scrollViewDidZoom:(UIScrollView *)scrollView {
    float zoomScale = scrollView.zoomScale;
    self.label.bounds = CGRectMake(0, 0, 100*zoomScale, 100*zoomScale); // supposing that label's original size is {100, 100}
    self.label.layer.affineTransform = CGAffineTransformMakeScale(1.0/zoomScale, 1.0/zoomScale);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

平均调整行中所有子级的大小以适合其父级

来自分类常见问题

如何调整超级视图的大小以适合具有自动布局的所有子视图?

来自分类Dev

使用jQuery调整div中所有元素的大小

来自分类Dev

使用PHP重新调整目录中所有图像的大小?

来自分类Dev

使用PHP重新调整目录中所有图像的大小?

来自分类Dev

调整文件夹中所有图像的大小

来自分类Dev

UIView:自动调整除一个子视图以外的所有子视图的大小-iOS

来自分类Dev

使用文本自动调整大小来调整WebView中所有图像的大小

来自分类Dev

更改UITableView中所有单元的子视图

来自分类Dev

子视图高度调整大小

来自分类Dev

一次调整layeredPane中所有组件的大小,并保持相对位置和大小

来自分类Dev

如何使用带有bash的convert命令来调整给定目录中所有图像的大小?

来自分类Dev

为什么R导出时重新调整绘图中所有内容的大小,而不调整文本的大小?

来自分类Dev

如何删除所有子文件夹中所有小于特定大小的文件?

来自分类Dev

Python / PIL调整文件夹中所有图像的大小

来自分类Dev

如何使用F.interpolate调整PyTorch中所有4个尺寸(NCHW)的大小?

来自分类Dev

使用自动布局调整超级视图和所有超级视图的同级大小

来自分类Dev

是否可以调整 UITabbarcontroller 的子视图大小?

来自分类Dev

使用 AutoLayout 调整子视图的大小

来自分类Dev

iOS:通过删除子视图来调整子视图的大小

来自分类Dev

计算字符串中所有子字符串的大小写

来自分类Dev

如何使子视图适合HStack中所有可用的垂直空间?

来自分类Dev

Android会动态调整其所有视图的整体布局大小

来自分类Dev

如何在所有视图控制器中禁用自动调整大小

来自分类Dev

获取子视图的所有子视图

来自分类Dev

如何根据UITextView子视图的大小调整UITableViewCell的大小?

来自分类Dev

根据子视图的内容大小调整滚动视图

来自分类Dev

超级视图加载完成后调整子视图的大小

来自分类Dev

更改子视图的约束后如何调整父视图的大小?

Related 相关文章

  1. 1

    平均调整行中所有子级的大小以适合其父级

  2. 2

    如何调整超级视图的大小以适合具有自动布局的所有子视图?

  3. 3

    使用jQuery调整div中所有元素的大小

  4. 4

    使用PHP重新调整目录中所有图像的大小?

  5. 5

    使用PHP重新调整目录中所有图像的大小?

  6. 6

    调整文件夹中所有图像的大小

  7. 7

    UIView:自动调整除一个子视图以外的所有子视图的大小-iOS

  8. 8

    使用文本自动调整大小来调整WebView中所有图像的大小

  9. 9

    更改UITableView中所有单元的子视图

  10. 10

    子视图高度调整大小

  11. 11

    一次调整layeredPane中所有组件的大小,并保持相对位置和大小

  12. 12

    如何使用带有bash的convert命令来调整给定目录中所有图像的大小?

  13. 13

    为什么R导出时重新调整绘图中所有内容的大小,而不调整文本的大小?

  14. 14

    如何删除所有子文件夹中所有小于特定大小的文件?

  15. 15

    Python / PIL调整文件夹中所有图像的大小

  16. 16

    如何使用F.interpolate调整PyTorch中所有4个尺寸(NCHW)的大小?

  17. 17

    使用自动布局调整超级视图和所有超级视图的同级大小

  18. 18

    是否可以调整 UITabbarcontroller 的子视图大小?

  19. 19

    使用 AutoLayout 调整子视图的大小

  20. 20

    iOS:通过删除子视图来调整子视图的大小

  21. 21

    计算字符串中所有子字符串的大小写

  22. 22

    如何使子视图适合HStack中所有可用的垂直空间?

  23. 23

    Android会动态调整其所有视图的整体布局大小

  24. 24

    如何在所有视图控制器中禁用自动调整大小

  25. 25

    获取子视图的所有子视图

  26. 26

    如何根据UITextView子视图的大小调整UITableViewCell的大小?

  27. 27

    根据子视图的内容大小调整滚动视图

  28. 28

    超级视图加载完成后调整子视图的大小

  29. 29

    更改子视图的约束后如何调整父视图的大小?

热门标签

归档