gpt4 book ai didi

ios - UIScrollView/向其中添加 xib

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

我正在尝试创建一个 ScrollView 并向其中添加 2 个 xib 屏幕(SVPage1.xib 和 SVPage2.xib),以便我可以翻转两个屏幕。

我创建了 ScrollView 和页面控制对象。

这是我在 .m 文件中的内容:

- (void)viewDidLoad
{
[super viewDidLoad];

NSArray *subviewArray = [[NSBundle mainBundle] loadNibNamed:@"SVPage1" owner:self options:nil];
UIView *mainView = [subviewArray objectAtIndex:0];
[self.scrollView addSubview:mainView];

CGRect frame;
frame.origin.x = self.scrollView.frame.size.width * 2;
frame.origin.y = 0;
frame.size = self.scrollView.frame.size;

NSArray *subviewArray2 = [[NSBundle mainBundle] loadNibNamed:@"SVPage2" owner:self options:nil];
UIView *mainView2 = [subviewArray2 objectAtIndex:0];
[self.scrollView addSubview:mainView2];

//Set the content size of our scrollview according to the total width of our imageView objects.
scrollView.contentSize = CGSizeMake(mainView.frame.size.width * 3, mainView2.frame.size.height);
}

#pragma mark - UIScrollView Delegate
- (void)scrollViewDidScroll:(UIScrollView *)sender
{
// Update the page when more than 50% of the previous/next page is visible
CGFloat pageWidth = self.scrollView.frame.size.width;
int page = floor((self.scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
self.pageControl.currentPage = page;
}

我相信当我加载第二个 xib 文件时,我会加载第一个文件。

当我运行该程序时,我在屏幕上看到第二个 xib 文件,当我翻阅其他页面时,它们是空白的。我认为我在尝试添加第二个 .xib 时做了一些非常错误的事情...

有什么想法吗?

最佳答案

基本上,当您创建 View 时,它的原点设置为 (0, 0)。我认为您只是忘记将第二个 View 框架的原点设置为变量

mainView2.frame = frame;

关于ios - UIScrollView/向其中添加 xib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16474664/

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