iPad。UIBarButtonItem具有UIToolbarTextButton类型的未记录视图。嗯?
我有一个iPad应用程序,其中我有一个视图控制器,它是许多UIGestureRecognizer的UIGestureRecognizerDelegate。我已实现以下UIgestureRecognitzerDelegate方法:iPad。UIBarButtonItem具有UIToolbarTextButton类型的未记录视图。嗯?,ipad,introspection,uitoolbar,uitouch,uigesturerecognizer,Ipad,Introspection,Uitoolbar,Uitouch,Uigesturerecognizer,我有一个iPad应用程序,其中我有一个视图控制器,它是许多UIGestureRecognizer的UIGestureRecognizerDelegate。我已实现以下UIgestureRecognitzerDelegate方法: - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { // Double tapping anywhere
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
// Double tapping anywhere on the screen hides/shows the toolbar
if ([gestureRecognizer isKindOfClass:[UITapGestureRecognizer class]] == YES) {
if (touch.tapCount == 2) {
self.toolbar.hidden = self.toolbar.isHidden ? NO : YES;
} // if (touch.tapCount == 2)
} // if ([gestureRecognizer isKindOfClass:[UITapGestureRecognizer class]] == YES)
// All gestures are ignored unless they happen on the fullscreen EAGLView
if ([touch.view isKindOfClass:[EAGLView class]] == NO) {
return NO;
} // if ([touch.view isKindOfClass:[EAGLView class]] == NO)
return YES;
}
我的设置是一个全屏EAGLView,在EAGLView顶部有一个UIToolbar。工具栏上有一个uibarbuttonite。这里的想法是双击任意位置可以切换工具栏的外观。所有其他手势必须出现在EagleView上
我的问题是,直接点击UIBarButtonItem show touch.view是UIView子类UIToolbarTextButton,它没有文档记录,无法进行内省
嗯
有人能建议一种工作方法,最好是使用某种形式的内省善良吗
谢谢,道格 谢谢
道格你可以反复计算
.superview
,直到你到达一个UIToolbar、EagleView或nil
,伟人所见略同;-)。是的,我真的找到了这个解决方案。有点像黑客,但看起来很健壮,确实有效。我仍然不明白为什么按钮没有公开一个可公开访问的视图。我的印象是,一切可见的东西都是一种独特的景观。不是吗?@dugla:因为我想苹果不想让人们直接干扰UIToolbar的内容。