ios - 在目标 C 中点击下一个和上一个按钮时,ScrollView 无法正确移动
问题描述
-(IBAction)nextButtonTapped:(id)sender {
if (moreItemsgridView.contentOffset.x<=moreItemsgridView.contentSize.width) {
CGRect frame;
frame.origin.x = moreItemsgridView.contentOffset.x + moreItemsgridView.frame.size.width;
frame.origin.y = 0;
frame.size = moreItemsgridView.frame.size;
[moreItemsgridView scrollRectToVisible:frame animated:YES];
//[moreItemsgridView setContentOffset:CGPointMake(moreItemsgridView.contentOffset.x + moreItemsgridView.contentSize.width, 0) animated:NO];
}
}
-(IBAction)previousButtonTapped:(id)sender {
if (moreItemsgridView.contentOffset.x>=moreItemsgridView.frame.size.width) {
CGRect frame;
frame.origin.x = moreItemsgridView.contentOffset.x - moreItemsgridView.frame.size.width;
frame.origin.y = 0;
frame.size = moreItemsgridView.frame.size;
[moreItemsgridView scrollRectToVisible:frame animated:YES];
}
}
当我点击下一个按钮时,我的图像正确滚动,但是当我单击上一个按钮时,它会正确滚动,但最后它只显示一半的视图......我做错了什么......请帮助我......
解决方案
[self.view layoutIfNeeded];
更新框架后调用 。
-(IBAction)nextButtonTapped:(id)sender {
if (moreItemsgridView.contentOffset.x<=moreItemsgridView.contentSize.width) {
CGRect frame;
frame.origin.x = moreItemsgridView.contentOffset.x + moreItemsgridView.frame.size.width;
frame.origin.y = 0;
frame.size = moreItemsgridView.frame.size;
[moreItemsgridView scrollRectToVisible:frame animated:YES];
//[moreItemsgridView setContentOffset:CGPointMake(moreItemsgridView.contentOffset.x + moreItemsgridView.contentSize.width, 0) animated:NO];
[self.view layoutIfNeeded]
}
}
-(IBAction)previousButtonTapped:(id)sender {
if (moreItemsgridView.contentOffset.x>=moreItemsgridView.frame.size.width) {
CGRect frame;
frame.origin.x = moreItemsgridView.contentOffset.x - moreItemsgridView.frame.size.width;
frame.origin.y = 0;
frame.size = moreItemsgridView.frame.size;
[moreItemsgridView scrollRectToVisible:frame animated:YES];
[self.view layoutIfNeeded]
}
}
推荐阅读
- firebase - Xamarin.iOS 崩溃 xamarin_printf
- ruby-on-rails - Rails:我可以从工作中重定向吗?
- javascript - 选择大扫除文本时避免隐藏 div
- vue.js - 如何从插槽内使用的组件访问插槽道具?
- vision - AutoML Vision 不提供 TF-Lite 模型
- node.js - 检查一些数据以包含某些接口的字段(Typescript)
- html - 如何在考虑每个用户的屏幕分辨率的情况下编写代码?
- sql - 查找过去 12 个月内的订单,最大日期为最后一个订单日期
- java - 如何从 JOLT 中的数组中获取值,将它们放入对象值数组中
- python-3.x - Python3:如何列出对象的类和实例属性?