草庐IT

ios - 理解 ios UIView 动画 block 和 dispatch_async(dispatch_get_main_queue) block

我正在尝试更好地理解这个主题。假设我想做一些非常酷的动画,如下所示-(void)coolAnimation{[UIViewanimateWithDuration:somedurationanimations:^{someanimation}];}既然它是一个动画block,它会自动添加到main_queue中吗?或者,为了获得最佳实践,我应该始终将UI更新添加到main_queue中,如下所示。dispatch_async(dispatch_get_main_queue(),^{[selfcoolAnimation];}); 最佳答案

ios - UITextView 应该检测链接,否则应该将触摸传播到下面的 View

我有一个TextView,我想在其中检测链接,但是当触摸点没有链接时,它应该将触摸传播到下面的View(目前没有)。它将包含在一个表格View单元格中,如果用户点击一个链接,它应该交互(它有效),但是当另一个点被点击时,它应该选择表格View单元格。我需要文本不可选择,所以我关注了https://stackoverflow.com/a/27264999/811405并实现:-(BOOL)canBecomeFirstResponder{returnNO;}在此之前它也没有发送下面的触摸事件,但我将其包括在内只是为了防止它干扰解决方案。 最佳答案

ios - 检测 UIView 中的 iOS 8 方向变化

我在iOS8中使用TraitCollectionDidChange检测常规和紧凑尺寸类。我试图在屏幕上水平放置一组特定的数据,它不适合纵向iPadMini上的水平类常规,但在横向中会有足够的空间。问题是Horizo​​ntalSizeClass在Portrait和Landscape中是Regular,所以TraitCollectionDidChange不会触发,我也不会被告知方向改变。我听说过对viewWillTransitionToSize的引用,但这在UIView中不可用。Apple是否表示他们不希望UI布局与Horizo​​ntalClassRegular-Portrait和Ho

iphone - iOS 中的自定义形状(倒 T)边框 Uiview

我必须在iOS上创建一个自定义形状(倒T)边框的Uiview。我附上下面的截图。我进行了很多研究,找到了一种使用here中的UIBezierPath的方法.但我不知道如何将我的View塑造成倒T形。 最佳答案 UIView总是矩形的。来自文档:TheUIViewclassdefinesarectangularareaonthescreenandtheinterfacesformanagingthecontentinthatarea.即使View仅限于矩形,您也可以按照自己喜欢的方式塑造事件区域。通过将其与透明背景相结合,您可以模仿您

iphone - 将 UIView 移动到另一个 UIView

我有一个UIViewController,它包含2个UIScrollViews,例如scrollView1、scrollView2。scrollView1包含许多UIViews,当点击其中一个UIViews我希望它移动到scrollView2当点击属于scrollView1的UIView时,UIViewController中的一个方法被调用并且view>作为参数传递。 最佳答案 在那个方法中你应该这样写:[viewremoveFromSuperview];[scrollView2addSubview:view];编辑:对于动画移动你

ios - 如何手动设置在应用程序委托(delegate)中显示哪个 Storyboard View

我有一个应用程序,当应用程序在一段时间内处于非事件状态时,它希望注销用户。它在应用程序中有多个不同的View,我希望应用程序委托(delegate)在每次触发此方法时将登录View设置为当前View:-(void)applicationDidBecomeActive:(UIApplication*)application如何在此方法中手动将loginViewController设置为Storyboard中的当前显示View? 最佳答案 UIStoryboard*mainStoryboard=[UIStoryboardstoryboa

ios - 点击后更改 UIView/UIControl 的屏幕位置

我很清楚这是一个简单的问题。我想了解如何在用户选择CGRect/UIButton时将其移动到屏幕上的不同位置。提前感谢您的帮助。-(void)showMeSomeButtons:(CGRect)frame{button=[[UIButtonalloc]initWithFrame:frame];button.frame=CGRectMake(240,150,50,50);UIImage*buttonGraphic=[UIImageimageNamed:@"1.png"];[buttonsetBackgroundImage:buttonGraphicforState:UIControlSt

ios - 如何在XCODE中将UIView横向分成三个大小相等的 subview ?

我必须使用Xcode将一个UIView水平分成三个大小相等的subview。我尝试使用约束。我得到了以下结果。在某些屏幕尺寸中。在小屏幕手机中,最左边和最右边的subview大小相同。但是,中心subview在小屏幕上非常小,在大屏幕上非常大。所以请让我知道将UIView水平拆分为三个大小均匀的subview的正确方法。提前致谢。注意:我使用的是Xcode8.1 最佳答案 设置约束是每个根据开发人员技能和可用性使用的技术。总有一天你会来的。这是我用来处理像您这样的情况的方法。1)在Storyboard上创建3个宽度相等的View。(

ios - 如何使触摸事件通过 UIView(类似于指针事件 :none in CSS)?

在CSS中,pointer-events:none;允许点击事件通过一个元素。我很好奇我是否可以在iOS上的Objective-C中为UIView做任何类似的事情。Here'sajsfiddletoanexampleofpointer-events:none.我能以某种方式为一个UIView通过覆盖hitTest:withEvent:实现相同的行为吗?或者也许还有另一种方法可以做到这一点?感谢您的帮助。 最佳答案 这是一个符合您最初直觉的便捷实现:#import"TouchTransparentView.h"@implementat

iOS 核心动画 : incorrect anchor point for rotation

我想在iOS中实现一个基本的旋转动画,其中View围绕其中心点不断旋转。但是,由于某些原因,旋转的anchor始终是父View的原点,而不是旋转View的中心。因此,即使我手动设置anchor,View也会围绕屏幕的左上角旋转。这是我正在做的://AddshapelayertoviewCAShapeLayer*shapeLayer=[[CAShapeLayeralloc]init];CGRectshapeRect=CGRectMake(0,0,100,100);UIBezierPath*roundedRect=[UIBezierPathbezierPathWithRoundedRect