Mobile Safari允许您通过输入一种UIScrollView水平分页视图来切换页面,页面控件位于底部.
我试图复制这种特殊的行为,其中水平可滚动的UIScrollView显示下一个视图的一些内容.
Apple提供的示例:PageControl显示如何使用UIScrollView进行水平分页,但所有视图都占用整个屏幕宽度.
如何让UIScrollView显示移动Safari的下一个视图的某些内容?
我有一个UIView
像iPhone的Springboard.我使用UIScrollView
和创建它UIButtons
.我想禁用所述scrollview上的水平滚动.我只想垂直滚动.我该如何做到这一点?
如何强制进行UIScrollView
分页和滚动仅在给定时刻垂直或水平移动?
我的理解是directionalLockEnabled
属性应该实现这一点,但是对角线滑动仍然导致视图对角滚动而不是将运动限制到单个轴.
编辑:为了更清楚,我想让用户水平或垂直滚动,但不能同时滚动.
我有一个滚动视图,它是屏幕的宽度,但只有约70像素高.它包含许多50 x 50图标(周围有空格),我希望用户可以选择.但我总是希望滚动视图以分页的方式运行,始终在正确的中心以图标停止.
如果图标是屏幕的宽度,这不会是一个问题,因为UIScrollView的分页会处理它.但是因为我的小图标远小于内容大小,所以它不起作用.
我之前在应用程序调用AllRecipes中看到过这种行为.我只是不知道该怎么做.
有关如何在每个图标大小的基础上进行分页工作的任何想法?
在IB中有一个选项可以取消选中滚动视图上的垂直滚动,但它似乎不起作用.
如何将scrollview设置为仅水平滚动,而不是在代码而不是IB中垂直滚动?
我在我的应用程序中发现了一个奇怪的行为,其中一个连接器IBOutlet
在我的视图控制器viewWillAppear:
和之间的调用之间有连接视图的框架viewDidAppear:
.这是我的UIViewController
子类中的相关代码:
-(void)viewWillAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
-(void)viewDidAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
Run Code Online (Sandbox Code Playgroud)
和结果日志输出:
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 0; 0 0); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 44; 320 416); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
Run Code Online (Sandbox Code Playgroud)
这清楚地表明帧在两次调用之间发生变化.我想在viewDidLoad
方法中使用视图进行设置,但是如果内容无法在屏幕上显示,我就无法更改内容,这似乎毫无用处.可能会发生什么?
当一个UIScrollView
(或其派生类)滚动时,似乎所有NSTimers
正在运行的都会暂停,直到滚动完成.
有办法解决这个问题吗?主题?优先级设置?什么?
有没有办法知道一个UIScrollView
是否到达顶部或底部内部
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView
willDecelerate:(BOOL)decelerate
Run Code Online (Sandbox Code Playgroud)
?
谢谢.
当用户在启用分页的UIScrollView中更改页面时,有没有办法检测或获取通知?
我有一个滚动视图和背后的图像视图,我用笔尖填充它.我正在使用autolayout.我有一个底层空间可以看到超级视图,还有一个顶层空间可以在两个视图上进行超视图.图像视图完全符合我的要求.对于iphone 5来说,它就是我想要它的地方.而对于其他iphone,它保持在屏幕底部之上,因此它可以正确调整大小.滚动视图在iphone 5上看起来是正确的,但在其他手机上它没有调整大小,所以它向下滚动到应用程序的视图下方.我在日志中收到这些消息:
2012-11-21 10:42:38.576 LCHApp[12604:907] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this: (1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer
to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
"<NSLayoutConstraint:0x1d8ea080 UIScrollView:0x1d8413b0.bottom == UIImageView:0x1d892110.bottom>",
"<NSAutoresizingMaskLayoutConstraint:0x1d8cca10 …
Run Code Online (Sandbox Code Playgroud) uiscrollview ×10
ios ×8
objective-c ×6
iphone ×5
autolayout ×1
cocoa-touch ×1
constraints ×1
ipad ×1
nstimer ×1