gpt4 book ai didi

ios - 如何像 Path Talk 应用程序一样编写设置 View Controller ?

转载 作者:行者123 更新时间:2023-11-29 02:50:39 24 4
gpt4 key购买 nike

我想编写一个“设置” View Controller ,就像在 Path Talk 应用程序上一样。这是一种视差效应。推特也有同样的效果。

我用 Storyboard 开始了一些东西,但它并没有真正起作用:我使用 TableViewController。在 TableView 内部,我有一个 View ,其中包含 2 张图片(背景和个人资料图片),然后是 3 个 TableView 部分。问题是当用户向下拖动时,图片会向下移动。这与 Path Talk 应用程序不同,因为在 Path Talk 应用程序上图像是固定的。当用户向下拖动时它们不会向下移动(参见图片)。

所以我在 GitHub 上找到了一个库:https://github.com/apping/APParallaxHeader这可以帮助我,但在图书馆度过一天之前,很高兴能得到您的建议。是否可以使用 Storyboard轻松完成此操作,或者库是最好的解决方案?

感谢您的帮助!

最佳答案

从 Storyboard中的普通 UIViewController 开始。添加一个 UITableView 和一个 UIImageView 到它。 tableView 的框架应该占据整个 View ,imageView 只是顶部所需的部分。然后让您的 viewController 实现 UITableViewDelegate(如果您想从中填充表格,可能还有 UITableViewDataSource)。在 viewDidLoad 中设置委托(delegate)和 contentInset 以将图像作为标题:

- (void)viewDidLoad
{
[super viewDidLoad];

self.tableView.delegate = self;
self.tableView.contentInset = UIEdgeInsetsMake(self.imageView.frame.size.height, 0, 0, 0);
self.tableView.dataSource = self;
}

实现 scrollViewDidScroll: 因为 UITableViewDelegate 符合 UIScrollViewDelegate 协议(protocol)并根据滚动方向将图像移动到那里:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
CGFloat imageY = -scrollView.contentOffset.y-self.tableView.contentInset.top;
if(imageY>0)
imageY = 0;
self.imageView.frame = CGRectMake(0, imageY, self.view.bounds.size.width, self.imageView.bounds.size.height);
}

关于ios - 如何像 Path Talk 应用程序一样编写设置 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24587140/

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