草庐IT

ios - 重叠的 UIView 上的 UITouch

我有两个View,每个View包含两个subview。只要两个顶View不重叠,命中检测就可以正常工作。因此,我可以触摸下图左侧标记为A的subview。但是,一旦顶部的两个View重叠,AView就无法接收触摸,因为View​​1“高于”View2并“吃掉”触摸。View1和View2都可以检测触摸,因为它们可以四处移动,因此需要检测subview“之间”的触摸并对其使用react。这意味着我的两个“顶部View”检测应该说:“哦,等一下,也许我正在重叠其他View并且应该将事件传递给它,并且只有当且仅当没有其他View是“低于我”的。我该怎么做?编辑:谢谢jaydee3一开始这不起

ios - 由于内存使用异常,具有 drawRect 定义的 subview 的启用 CATiledLayer 的 UIView 崩溃

我们在iPad3上发生了内存不足的崩溃,我们将其追溯到以下场景:使用CATiledLayer并绘制内容(例如PDF)的UIView具有带有自己的drawRect方法的subview(例如,突出显示搜索结果)。这使得CoreAnimation消耗大量内存(在VMTracker工具中超过100MB),并且很容易导致崩溃。虽然此问题存在于所有设备上,但只有iPad的Retina显示屏会导致缓存大小过大。这可以用Apple的PhotoScroller复制示例:子类化UIView,取消注释drawRect,并向TilingView添加一个实例。该应用程序将在iPad3上崩溃。注释drawRect

iphone - 使用 addTarget 定位 UIView 中的 UIButton

MyViewController.m创建了一个myUIView的实例。在myUIView中创建了一个UIButton。一切似乎都很好,除了我在ViewController级别使用addTarget捕获按钮按下。按下按钮会导致崩溃,显示:“无法识别的选择器已发送到实例0x6c254e0...”这个addTarget代码有错吗?非常感谢任何人的帮助。-(void)viewDidLoad{[myUIView.myButtonaddTarget:selfaction:@selector(myButtonIsPressed:)forControlEvents:UIControlEventTouc

ios - 如何仅在复合 UIView 的一部分应用 3d 透视变换?

我有带UIImageViews、UILabels、UITextView的UIView。我的目标是转换中间部分,使其看起来像折叠一张纸:-顶部和底部保持不变,只是它们相互滑动-中间部分向屏幕折叠(如在Clear应用程序中:http://blog.massivehealth.com/post/18563684407/clear?cbe4fc38)我的想法是首先加载整个View,然后分成4部分,将中间两部分制作成CGImage并以某种方式为它们制作透视动画,同时变换顶部和底部部分,以便它们相互滑动(最后,中间两部分零件应该变得不可见)。我还应该能够展开此View并滚动UITextView。我

iphone - 为 UIView 更改设置动画,其中 UIView 已完全重建

我的UIViewController得到它正在控制的View,用这样的东西完全重建自己:[self.viewrebuildYourself:bIsLandscape];//thislineisintheViewController然后View本身包含以下方法:-(void)rebuildYourself:(BOOL)isLandscape{NSArray*viewsToRemove=[selfsubviews];for(UIView*vinviewsToRemove){[vremoveFromSuperview];}[selfaddControls];//addslotsofviews

ios - 多个 UIView 的重叠

我正在自定义UIView中创建多个自定义UIView。自定义subview的创建是可以的。它们看起来像这样:绘制方法非常简单:[[UIColorbrownColor]set];CGContextRefctx=UIGraphicsGetCurrentContext();CGContextSetLineWidth(ctx,5.0f);CGContextBeginPath(ctx);CGContextMoveToPoint(ctx,0.0f,0.0f);CGContextAddLineToPoint(ctx,100.0f,0.0);CGContextAddLineToPoint(ctx,13

ios - 异步加载 UIView

我正在尝试异步加载View。问题是要加载的View框架取决于异步加载的数据。换句话说,有一些长计算决定实际显示UIView的位置。我知道尝试在线程中实际显示UIView时会出现问题,您应该始终将它们加载回主线程,所以这是我一直在尝试的代码:asyncQueue=[[NSOperationQueuealloc]init];[asyncQueueaddOperationWithBlock:^{//DoworktoloadtheUIViewsandfigureoutwheretheyshouldbeUIButton*test=[[UIButtonalloc]initWithFrame:[se

iphone - UIView 贴在 UIScrollView 的底部

所以我在UIViewController的UIView中有一个UIScrollView,我在其中添加了一个UIView,我希望它始终停留在底部,无论方向如何变化。所以我有以下内容:问题是,当我旋转到横向时,ScrollView内容大小高度肯定会大于框架高度,因此它会向下滚动。但是,我想粘在底部的这个UIView不会粘住。无论方向如何变化,如何让它始终粘在底部。当我禁用UIScrollView自动调整subview时,这个UIView会粘在底部,但旋转时宽度不会调整 最佳答案 您应该尝试以下列方式使用自动调整大小的蒙版yourview

iPhone iOS 使用 UIView animateWithDuration block 执行操作的正确方法是什么?

我在想什么是响应用户事件执行“长”操作的正确方法。例如,我有这张幻灯片来取消block,该block在0.5秒内自动离开屏幕。[selfcoreDataAction]本身可能需要大约0.3秒。我想确保操作在用户看到动画结束时完成(我不希望用户意外导航到不同的Controller或关闭应用程序以为操作已完成)。在这种情况下,我应该将[selfcoreDataAction];放在哪里?在block之上、block内还是完成block中?//shouldIputithere?CGPointslideToCancelCenter=slideToCancel.view.center;[UIVie

objective-c - 在 UIView 中嵌入 ZBar 相机

我正在使用ZBarSDK在iPad上扫描二维码。我目前成功地工作了。但是,我目前使用的代码在全屏模态视图Controller中打开相机,但我想将相机View嵌入到UIView中。这是我现在的代码,它可以很好地用作模态视图Controller。但我想在我创建的名为“showCamera”的UIView中显示相机。我搜索了网络和这些论坛,有一些类似的问题,但没有在答案中提供代码。ZBarReaderViewController*reader=[ZBarReaderViewControllernew];reader.readerDelegate=self;reader.showsZBarCo