jjzjj

setFrame

全部标签

iphone - 如何覆盖 UILabel 的 setFrame

我想重写setframe以便它也将标签居中,但是执行如下操作:-(void)setFrame:(CGRect)frame{[selfsetFrame:frame};self.center=CGPointMake(self.superview.center.x,kNavigationBarFrameHeight/2);}给了我一个无限循环。那么我该怎么做呢? 最佳答案 你需要调用[supersetFrame:frame]。这将调用UILabel的setFrame实现,而不是您自己的实现。这就是导致无限循环的原因。

ios - UIButton setFrame 无法识别的选择器 alignmentRectInsets

这是我第一次以编程方式添加UI元素。该应用因错误而崩溃:2014-01-1418:39:50.080Convention[27580:70b]-[__NSCFConstantStringalignmentRectInsets]:unrecognizedselectorsenttoinstance0x10c0282014-01-1418:40:00.792Convention[27580:70b]***Terminatingappduetouncaughtexception'NSInvalidArgumentException',reason:'-[__NSCFConstantStrin

ios - 在 UIView 上调用 setFrame 之后是否必须显式调用 setNeedsDisplay?

在UIView上调用setFrame后是否必须显式调用setNeedsDisplay如下例所示?view1.frame=frame;[view1setNeedsDisplay];[view2setFrame:frame]; 最佳答案 简短回答:否当你需要方法drawRect被调用时你调用setNeedsDisplay,并且根据UIViewClassReference.-ChangingtheframerectangleautomaticallyredisplaysthereceiverwithoutinvokingthedrawRe

ios - C4Shape,setFrame不改变形状的大小(C4Framework)

我正在玩C4,似乎无法弄清楚为什么我的形状没有动画。如果我创建这样的形状:self.theShape=[C4Shapeellipse:CGRectMake(100,100,2,2)];...然后调用[theShapesetFrame:CGRectMake(200,200,50,50)];形状不会改变大小。实现表明它应该,但我没有看到它。我做错了什么吗?是因为我没有更新Canvas吗? 最佳答案 在C4中,对C4Shape对象调用setFrame:不会对其进行缩放。原因是改变CAShapeLayerView的框架不会改变底层贝塞尔曲线

java - Android:为什么我不能从 View 中覆盖 setFrame?

只是尝试扩展View并做一些自定义工作,但是当我尝试覆盖setFrame方法时Eclipse会报错。声明父类中没有方法可以覆盖:ThemethodsetFrame(int,int,int,int)oftypeTestmustoverrideorimplementasupertypemethod这里是来自androidSDK源的方法签名。protectedbooleansetFrame(intleft,inttop,intright,intbottom)如您所见,它不是私有(private)或包级别,甚至没有指定为最终...只是protected。这应该意味着我完全能够在子类中覆盖它。正

ios - 自动布局 `setFrame:` UIView 的 subview

我有一个容器UIView。它的child的位置是用自动布局管理的。但是,我想明确地定位容器本身。容器存在于我称为VideoPreviewView的UIView子类中。该容器名为contentOverlayView。这是我的代码,用于向填充它的容器添加一个明显的红色子项,但边缘处有1像素的边距:UIView*constredView=[UIViewnew];[redViewsetTranslatesAutoresizingMaskIntoConstraints:NO];[redViewsetBackgroundColor:[UIColorredColor]];[[videoViewcon

ios - setFrame 对于 AVCaptureVideoPreviewLayer 不能正常工作

我正在尝试像这样将AVCaptureVideoPreviewLayer添加到我的View中[captureVideoPreviewLayersetFrame:CGRectMake(10.0f,10.0f,300.0f,300.0f)];[self.view.layeraddSublayer:captureVideoPreviewLayer];但它似乎不遵循CGRectMake,层高300但宽度不是,我不知道为什么! 最佳答案 解决方案很简单,我只需添加captureVideoPreviewLayer.videoGravity=AVL

iOS,setTransform 被 setFrame 覆盖了吗?重新运行 setFrame 后不重新绘制变换

在使用setFrame重新绘制框架后,我的转换不绘制。我在使用setFrame更改方向时缩放View。但此View还需要根据BOOL参数更改位置:On=在View中向上,off=在屏幕外向下。我使用setTransform来调整View的位置。首先,我通过执行setFrame来绘制View。这会在屏幕底部绘制View100点。然后我设置一个转换(-100在ty上)将它带到视点(只要BOOL设置为TRUE,否则转换为0并且View在屏幕外)。[viewsetFrame:CGRectMake(0,self.view.bounds.size.height,self.view.bounds.s

ios - self.view setFrame 不适用于 iOS 8 和导航 Controller

有没有人注意到self.viewsetFrame在iOS8中停止与NavController一起工作。如果ViewController没有navController,它工作得很好,否则,它没有。有谁知道解决方法?目前我正在使用[self.viewsetFrame:CGRectMake(0,-100,[[UIScreenmainScreen]bounds].size.width,[[UIScreenmainScreen]bounds].size.height)];但这不再有效了 最佳答案 尝试在设置框架之前将“setTranslate

multithreading - NSSplitViewItem 折叠动画和窗口 setFrame 冲突

我正在尝试使(10.10中的新功能)NSSplitViewItem折叠和展开,同时移动它的包含窗口,以便将整个东西保持在“原位”。问题是我在动画中出现抽搐(如here所示)。我进行折叠的代码是这样的:functogglePanel(panelID:Int){ifletsplitViewItem=self.splitViewItems[panelID]as?NSSplitViewItem{//TogglethecollapsedstateNSAnimationContext.runAnimationGroup({contextin//specialcasefortheleftpaneli