【问题标题】:Zooming a UIScroolView缩放 ScrollView
【发布时间】:2012-07-02 10:05:55
【问题描述】:

我有一个带有从 UIScrollview 扩展的 Myview 类的 Scrollview 的 Storyboard,该类实现了一种使用quartz2d 绘制一些矩形的方法。

我正在尝试在该 Scrollview 中实现放大/缩小,但没有办法,我无法在任何地方找到答案。

我的控制器(UIwindow)中有这个:

- (void)viewDidLoad {

[myscrollview setScrollEnabled:YES];
[myscrollview setPagingEnabled:YES];
myscrollview.clipsToBounds = YES;
myscrollview.minimumZoomScale= 1.0;
myscrollview.maximumZoomScale=6.0;
[myscrollview setZoomScale:myscrollview.minimumZoomScale];
}

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

但它不起作用。在哪里可以找到有关在 iOS 5.1 中实现放大/缩小的信息?

谢谢。

【问题讨论】:

    标签: ios uiscrollview zooming quartz-2d


    【解决方案1】:

    设置委托后尝试

     myscrollview.delegate = self;
    

    【讨论】:

    • 从不兼容的类型“MyWindow *const__strong”分配“id
    • 是的。我应该忽略它吗?
    • 将您的界面更改为@interface YourViewController : UIViewController 它将修复警告
    【解决方案2】:

    我假设你这样设置你的委托:myscrollview.delegate = self;

    在您的 viewForZoomingInScrollView: 委托方法中,您必须返回一个您喜欢缩放的视图,而不是滚动视图本身。

    【讨论】:

    • 我想要相同的视图,放大,我该怎么做?我有一个黑色背景,上面画着红线:CGContextRef c = UIGraphicsGetCurrentContext(); CGFloat red[4] = {1.0f, 0.0f, 0.0f, 1.0f}; CGContextSetStrokeColor(c, red); CGContextBeginPath(c); CGContextMoveToPoint(c, x*12, y*10); CGContextAddLineToPoint(c, x+10, y+10);
    • 将绘图移动到单独的视图中,您无法缩放滚动视图本身。
    • 类似 UIView* myview; [myview drawlines] myscrollview = myview ??
    猜你喜欢
    • 2019-05-24
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-19
    • 2016-09-01
    • 2015-02-21
    • 2011-12-02
    相关资源
    最近更新 更多