小编Chr*_*s C的帖子

如何忽略触摸事件并将它们传递给另一个子视图的UIControl对象?

我有一个自定义的UIViewController,其UIView占据了屏幕的一角,但大部分都是透明的,除了它的部分有一些按钮和东西.由于该视图上对象的布局,视图的框架可以覆盖其下方的一些按钮.如果他们没有触及任何重要的东西,我希望能够忽略该视图上的任何触摸,但我似乎只能传递实际的触摸事件(touchesEnded/nextResponder的东西).如果我有一个UIButton或类似的东西没有使用touchesEnded,我如何将触摸事件传递给它?

我不能手动找出要调用的按钮选择器,因为这个自定义ViewController可用于许多不同的视图.我基本上需要一种方法来调用它:

[self.nextResponder touchesEnded:touches withEvent:event];

在UIControl类型上也是如此.

cocoa-touch uikit uiresponder ios

64
推荐指数
4
解决办法
6万
查看次数

CATTraaction之后在ios6上重复调用layoutSubviews

我继承了一个过于复杂的项目(所以我不知道所有的内部工作),而且我遇到了一个bug.我的应用程序的某些部分使用CATransaction完成了一些长动画,并且它似乎导致在动画处于活动状态时重复调用layoutSubviews.这不会发生在ios5上,一切看起来都是正确的,但是在ios6上,它被称为不间断,并干扰了视图的很多布局.堆栈跟踪全部隐藏/灰显,但它似乎开始CA::Transaction::commit()

有什么与CATransaction在ios版本之间发生变化导致这样的事情?

core-animation objective-c ios

7
推荐指数
1
解决办法
966
查看次数

采用类别的协议

我想验证此修复程序是否真的有效,并且不会对我的代码产生负面影响:

我已经创建了一个带有MyClass.h公共头的静态库,我的其余代码都是隐藏的.MyClass采用MyProtocol协议,MyProtocol是在MyProtocol.h中定义的.我想隐藏MyProtocol.h,但由于MyClass.h是一个公共头,如果我试图将它隐藏为项目头,它就找不到MyProtocol.h.我的解决方案

MyClass.h:

@interface MyClass : NSObject {
    //instance variables
}
// methods
@end
Run Code Online (Sandbox Code Playgroud)

MyClass.m:

#import "MyProtocol.h"
@interface MyClass() <MyProtocol>
@end

@implementation MyClass
// implementation
@end
Run Code Online (Sandbox Code Playgroud)

除了这里,我还没有看到其他类似事情的例子:类别可以同时实现协议吗?,问题/答案最终与原始问题无关.所以我想确保它实际上做了它看起来的样子,并且/或者看看是否有更好的方法来实现我想要做的事情.

iphone macos cocoa objective-c ios

5
推荐指数
1
解决办法
189
查看次数

AVVlayerItem.loadedTimeRanges上的KVO可能吗?

苹果文档提到了它,但是如何为AVPlayerItem的loadedTimeRanges属性设置键值观察?该属性是一个不会改变的NSArray,所以你不能只使用它playerItem addObserver:self forKeyPath:@"loadedTimeRanges ...

或者是否有其他方法可以在此更改时收到通知或更新?

key-value-observing avfoundation ios avplayer

5
推荐指数
1
解决办法
6284
查看次数

如何创建自定义UIViewController过渡动画?

这个问题似乎得到了很多要求,但我从来没有找到一个确定的答案,关于是否可以像UIKit一样进行自定义转换.

我知道你可以做一些技巧,比如拍摄当前视图和即将到来的视图的截图,然后在动画下更改视图控制器时动画.但是,这需要相当多的内存,因为你基本上有2个完全额外的屏幕值(因为屏幕截图).

我正在寻找一种更优雅的方式来呈现具有自定义动画的视图控制器.或者,是否有更节省内存的方法来执行上述方法?

iphone animation uiviewcontroller ios

2
推荐指数
1
解决办法
1361
查看次数