Tag: uiview

在可缩放的视图上绘图

我正在研究一个小的绘图应用程序,它具有支持放大/缩小的基本要求。 我有两个主要问题: 当视图放大/变形时,绘图不会显得清晰明了。 有没有更好的方法,还是有一种方法来改善视图缩放时的绘图? 在1200 x 1200磅的canvas上(在iPhone上)绘图时,绘图性能较差。 任何机会,我可以改善它的大帆布尺寸? 缩放代码: – (void)scale:(UIPinchGestureRecognizer *)gestureRecognizer { [self adjustAnchorPointForGestureRecognizer:gestureRecognizer]; UIView *canvas = [gestureRecognizer view]; if ([gestureRecognizer state] == UIGestureRecognizerStateBegan || [gestureRecognizer state] == UIGestureRecognizerStateChanged) { // Calculate the drawing view's size CGSize drawingViewSize = …; // Calculate the minimum allowed tranform size // Developer's Note: I actually wanted to […]

UIButton和滑动手势

我有两个UIButton在每边(左和右)和一个UIImageView在中心UIView 。 点击任一button将改变UIImageView和工程。 我希望能够跨UIView滑动,并改变UIImageView 。 现在,你必须在UIImageView本身上滑动,因为UIButton正在捕捉input。 我希望能够在包含UIView任何地方执行滑动,并执行转换。 有没有办法转发触摸事件,以便滑动可以触发一个动作,但是任何其他的触摸转发到正确的子视图?

如何将手势识别器添加到UIImageView?

在项目中,有一个UIView myView和一个UIImageView myImage,位于myView,views层次结构之后: 的UIWindow | – UIImageView(myImage) | – UIView(myView)[整个屏幕] 然后在ViewController的myImage中添加一个手势识别器 UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)]; tapGesture.numberOfTapsRequired = 1; [myImage addGestureRecognizer:tapGesture]; 但手势不会影响myImage,myImage具有setUserInteractionEnabled:YES 。 这只会影响myImage放在myView前面,我该如何解决这个问题?

以编程方式设置一个uibutton的中心 – SWIFT

我有UIView内的UIButton ,我的UIButton有我在故事板中设置的约束。 现在,我想在UIView的中心设置UIButton的中心。 我将如何编程?

我如何得到我的UITableViewCell中的子视图相对于整个窗口的位置?

我知道convertRect:toRect是这里的关键,但我不知道如何调用它。 我有我的细胞的子视图,我希望它在应用程序的整个窗口中的位置。 我需要知道这一点,当我点击这个button(子视图)的目标行动方法。 我需要调用单元格的convertRect:toRect函数,我想,为了得到正确的坐标,但是在这个方法中,我没有参考单元格本身。 我是否爬上超视图层次? 这看起来很糟糕,因为我不完全确定我会得到什么,因为它embedded在单元格的contentView中,而苹果用他们的私人子视图和其他东西做了一些古怪的事情。 码: @IBAction buttonPressed(sender: UIButton) { // This button got the callback that it was pressed. It's in a cell. I need to convert its rect to that of the window here. I need the coordinate system it's calculated from (the cell) which I'm not sure of how to easily […]

如何从另一个xib视图中的一个xibembeddedUIViewController的视图?

MyViewController.xib将File的Owner类设置为MyViewController ( UIViewController一个子类),将File的Owner视图连接到包含一些子视图的UIView 。 OtherViewController.xib具有文件的所有者类设置为UIViewController和文件的所有者视图连接到一个空的UIView 。 是否可以在Interface Builder中将MyViewController的视图embedded到OtherViewController.xib视图中? 我试图将MyViewController一个实例添加到OtherViewController.xib,但我不能把它放在视图(因为它不是一个UIView ),我无法进入MyViewController中与MyViewController关联的视图(只有视图控制器本身,并没有连接到,使其到OtherViewController.xib)。

简单的UIView drawRect不被调用

我无法弄清楚问题在这里。 我有一个非常简单的viewDidLoad方法非常简单的UIViewController: -(void)viewDidLoad { NSLog(@"making game view"); GameView *v = [[GameView alloc] initWithFrame:CGRectMake(0,0,320,460)]; [self.view addSubview:v]; [super viewDidLoad]; } 我的GameView被初始化如下: @interface GameView : UIView { 它只是有一个新的drawRect方法: – (void)drawRect:(CGRect)rect { [super drawRect:rect]; NSLog(@"drawing"); } 在我的控制台中,我看到“制作游戏视图”被打印,但是“绘图”从不打印。 为什么? 为什么我的自定义UIView中的drawRect方法没有被调用。 我实际上只是试图在屏幕上画一个圆圈。

我怎样才能find一个特定的UITabBarItem的UIView?

我正在使用名为SwiftyWalkthrough的外部库,该库允许我只在屏幕上公开某些视图,以引导新用户通过我的应用程序的用户界面。 我想要暴露给用户的第一个项目是一个UITabBarItem。 我需要find与特定的UITabBarItem关联的UIView。 我知道该项目的索引,我已经给它一个标签。 但是我还没有find一种方法让他们帮我find这个观点。 当然,我只想用公共接口来实现这一点。

iOS 5 UIView drawRect覆盖不能在设备上工作

我正在准备我的iPhone应用程序发布iOS 5 GM,并遇到与UIView的错误。 当我重载子类的drawRect方法时,模拟器显示所需的结果,但是当我尝试在实际设备上进行testing时,drawRect覆盖没有任何效果。 我甚至在一个drawRect覆盖内放置了一个日志语句,并确认它正在被调用。 有没有人注意到这个问题? 以下是我正在使用的覆盖代码: – (void)drawRect:(CGRect)rect { DebugLog( @"*** calling drawRect ***" ); CGContextRef context = UIGraphicsGetCurrentContext(); // draw the dark gray background CGContextSetFillColor(context, [SkinManager getWhiteColor]); CGContextFillRect(context, CGRectMake(0.0, 0.0, rect.size.width, rect.size.height)); // draw the text field background in white CGContextSetFillColor(context, [SkinManager getDarkGray]); CGContextFillRect(context, CGRectMake(2.0, 2.0, rect.size.width – 4, rect.size.height – 4)); } […]

用CAShapeLayer和UIBezierPath剪辑屏蔽uiview

我有一个问题,使用CAShapeLayer-UIBezierPath剪辑视图,我想剪辑的内容,但我最终得到一个中风(框架)与该UIBezierPath,这是我的代码 UIBezierPath *path2Path = [UIBezierPath bezierPath]; [path2Path moveToPoint:CGPointMake(206.745, 0)]; [path2Path addLineToPoint:CGPointMake(206.745, 97.613)]; [path2Path addLineToPoint:CGPointMake(0, 97.613)]; [path2Path addLineToPoint:CGPointMake(0, 0)]; [path2Path addLineToPoint:CGPointMake(87.28, 0)]; [path2Path addCurveToPoint:CGPointMake(103.808, 12.118) controlPoint1:CGPointMake(87.28, 0) controlPoint2:CGPointMake(86.555, 12.118)]; [path2Path addCurveToPoint:CGPointMake(119.466, 0) controlPoint1:CGPointMake(121.061, 12.118) controlPoint2:CGPointMake(119.466, 0)]; [path2Path addLineToPoint:CGPointMake(206.745, 0)]; [path2Path closePath]; [path2Path addClip]; CAShapeLayer *pathLayer = [CAShapeLayer layer]; pathLayer.frame=MYVIEW.bounds; pathLayer.path = path2Path.CGPath; pathLayer.strokeColor = [[UIColor blackColor] […]