gpt4 book ai didi

iphone - iOS/Obj-C UIScrollView View 未正确添加

转载 作者:行者123 更新时间:2023-11-29 11:04:14 25 4
gpt4 key购买 nike

我试图制作一个带有连接页面控件的基本 ScrollView ,但我的代码遇到了一些问题。我的 viewDidLoad 方法如下所示:

- (void)viewDidLoad{
[super viewDidLoad];
NSLog (@"View did load");
// Do any additional setup after loading the view, typically from a nib.

scrollView.delegate = self;
scrollView.pagingEnabled=YES;

NSArray *frames = [NSArray arrayWithObjects:[UIColor redColor], [UIColor greenColor], [UIColor blueColor], nil];
for (int i = 0; i < frames.count; i++) {
CGRect frame;
frame.origin.x = self.scrollView.frame.size.width * i;
frame.origin.y = 0;
frame.size = self.scrollView.frame.size;

UIView *subview = [[UIView alloc] initWithFrame:frame];
subview.backgroundColor = [frames objectAtIndex:i];
[self.scrollView addSubview:subview];
NSLog (@"Looped, i = %i color = %@", i, [frames objectAtIndex:i]);
}

self.scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * frames.count, scrollView.frame.size.height);
NSLog(@"The width is: %f", self.scrollView.frame.size.width);
}

问题似乎是我尝试添加到 View 中的彩色框架从未出现(甚至第一个也没有出现)。如果我没有启用 ARC,我会在每个循环结束时释放 CGRect 框架,但它真的应该用 ARC 自己做,对吧?

当我在模拟器和我的实际手机上运行该应用程序时,我看到一个黑色屏幕,底部有 UIPageControl 点。当我在 ScrollView 上滑动手指时没有任何反应,但如果我将它拉到一边很远,pageControl 会移动到下一个“点”。

NSLog最后一句总是输出0.0000,说明没有一个 View 被添加到 ScrollView 。

非常感谢所有帮助:)

最佳答案

问题出在 viewDidLoad 中。将您的代码移至 viewDidAppear:,它应该可以正常工作。框架尚未在 viewDidLoad 中设置。

关于iphone - iOS/Obj-C UIScrollView View 未正确添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14367389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com