草庐IT

ios - 如何在 UIScrollView 的 super View 中检测 "Touch Down"?

我有一个包含UIScrollView的UIView,我希望能够在UIView中捕获任何“TouchDown”事件用户点击UIScrollView的时间。我已经尝试在我的UIViewController中包含所有的touchesBegan/Ended/Cancelled处理程序,但是当在主中包含的UIScrollView中点击时,它们都没有被触发>UIView.实现此目标的最佳方法是什么? 最佳答案 在UIView中,实现touchesBegan:-(void)touchesBegan:(NSSet*)toucheswithEvent

ios - 将多个 nib 文件与单个 View Controller 一起使用?

背景我正在使用界面生成器为我正在开发的应用程序创建用户界面。该应用程序有一个显示一系列按钮的屏幕。单击按钮会显示覆盖按钮的关联View。单击另一个按钮会隐藏之前的叠加View并显示另一个。为了在IB中更轻松地管理UI,我决定为单击相关按钮时显示的每个subview创建多个nib文件。然后,我使用UINib类在ViewController的viewDidLoad方法中加载subview的nib文件。这背后的想法是避免在单个nib文件中将多个View相互堆叠,因为这在IB中很难操作。我本可以在代码中创建所有View,但这需要大量繁琐的编码,因为每个subview的布局都非常复杂(具有多个s

ios - 如何以编程方式从 UIView 获取约束

我想从UIView获取UILabel约束,但我无法获取任何约束。我像这样在CustomView.m中设置约束:-(id)initWithFrame:(CGRect)frame{self=[superinitWithFrame:frame];if(self){_titleLabel=[UILabelnew];[selfaddSubview:_titleLabel];}returnself;}-(void)layoutSubviews{[superlayoutSubviews];_titleLabel.translatesAutoresizingMaskIntoConstraints=NO

ios - 如何锁定自定义UView的设计尺寸

我正在制作自定义activityIndi​​cator。我希望它表现得像UIActivityIndi​​catorView但具有不同的动画。当您将UIActivityIndi​​catorView放置到Storyboard时,此View的宽度和高度被锁定以进行修改(变灰)。在代码中为View设置固定宽度没有问题但是是否可以像制作UIActivityIndi​​catorView一样制作自定义View:在Storyboard中将宽度和高度显示为灰色? 最佳答案 胸部,美好的一天!嗯,我找到了你问题的答案here!虽然是1.5年前,但我

iphone - 圆 UIView 角落的最佳和最快方法?

我目前正在重写一个调整(在SpringBoard本身内部运行),因此(当然)平滑度、速度和效率对我来说是最重要的事情,因为即使是最轻微的不必要的滞后也会花费远离用户体验。所以我的问题是如何以最小的延迟来绕过View角。最明显的是:view.layer.cornerRadius=value;view.layer.masksToBounds=YES;但是我听说用layer.mask设置CALayermask更快?如果是这样,这两种解决方案中哪一种最好?:https://stackoverflow.com/a/4930166/458205这段代码使用了mask,但是mask层也使用了corn

iphone - iOS 测试驱动开发 : Testing a method that uses UIVIew animateWithDuration:animations:completion:

我有一个可以触发动画的按钮按下,并在动画完成后更改标签的文本。我想编写一个测试来验证当按下按钮时,标签的文本最终会正确更改。按钮按下IBAction的实现将使用[UIViewanimateWithDuration:animations:completion:]。我显然不希望我的单元测试实际等待0.5秒让动画完成。我考虑过模拟UIView,但将UIView作为ViewController的依赖项注入(inject)似乎很奇怪。此外,我正在使用的模拟框架(OCMockito)似乎不适用于模拟类方法。我还考虑过方法调配或为UIView编写测试类别,并使用一个只调用animations:blo

ios - 在可缩放 View 上绘图

我正在开发一个小型绘图应用程序,它具有支持放大/缩小的基本要求。我有两个主要问题:当View缩放/变换时,绘图显得不清晰。有没有更好的方法,或者有没有办法在View缩放时改进绘图?在1200x1200ptsCanvas上(在iPhone上)绘图时,绘图性能很慢。我有机会针对大Canvas尺寸改进它吗?缩放代码:-(void)scale:(UIPinchGestureRecognizer*)gestureRecognizer{[selfadjustAnchorPointForGestureRecognizer:gestureRecognizer];UIView*canvas=[gestu

iOS 8 - 查找具有标识符的 UIView 的约束

我正在尝试在viewDidLoad中为iPhone4S、5、5S的ImageView更改约束:for(NSLayoutConstraint*constraintinlogoImage.constraints){if([constraint.identifierisEqualToString:@"logoTopIdentifier"]){constraint.constant=10;}}看起来它甚至没有在循环中迭代。有没有其他方法可以通过标识符获取特定约束? 最佳答案 您可以将Storyboard中的约束连接到您的ViewContro

ios - 在 viewDidLayoutSubviews 中更改框架

当ViewController的View首次显示时,我想运行一个动画,其中ViewController中的所有元素都从屏幕底部外部滑动到它们的自然位置。为此,我在viewDidLayoutSubviews中执行了subview.frame.origin.y+=self.view.frame.size.height。我也尝试了viewWillAppear,但它根本不起作用。然后,我使用viewDidAppear中的subview.frame.origin.y-=self.view.frame.size.height将它们设置为自然位置。问题是viewDidLayoutSubviews在V

ios - 拉伸(stretch)的 UIView 背景在截图过程中被截断

所以,我正在截取我保存到设备照片流中的子类UIView的屏幕截图。问题:问题是我使用resizableImageWithCapInsets向我的UIView添加拉伸(stretch)背景,但是这个背景在右侧被截断了,我不知道为什么。如果有人可以帮助我,我将不胜感激。我通过以下方式将拉伸(stretch)背景添加到我的UIView:[diagramBaseaddSubview:[selfaddTileBackgroundOfSize:diagramBase.frameandType:@"ipad_diagram_border.png"]];调用这个方法:-(UIImageView*)ad