`

[IOS]通过center point创建UIView

    博客分类:
  • IOS
阅读更多

1.只需要任意创建一个view,然后改变该view的center值就可以了,该view会移位至中心点

UIButton* btn = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 70, 70)];
btn.center = CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height/2);

 

2.有关中心点的一些补充

    1.页面的中心点:self.view.center

    2.获得一个view的中心点坐标:CGRectGetMidX and CGRectGetMidY

 

3.有时候会出现,通过center直接赋值不能出现在预期的位置情况:

例如btn.center = view.center,会发现移位了

此时应该手动获得view的中心点,如下:

wifiBtn.center = CGPointMake(CGRectGetMidX(_wifi_view.bounds), CGRectGetMidY(_wifi_view.bounds));

 

参考:

1.https://stackoverflow.com/questions/18189572/cgrect-positioning-according-to-center-point

分享到:
评论

相关推荐

    iOS 利用贝塞尔曲线实现的圆环进度指示器

    在iOS开发中,创建美观且功能丰富的用户界面是至关重要的,而圆环进度指示器是一种常见且实用的组件,常用于展示数据加载、任务完成度等。本篇将深入探讨如何利用贝塞尔曲线(Bezier Curve)来实现这样一个圆环指示...

    ios 画图demo ios 画图demo

    在iOS中,每个UIView都有一个对应的`CALayer`,负责实际的渲染工作。`CALayer`自身并不支持直接绘图,但可以通过子类化或者添加`CAShapeLayer`作为其子层来实现自定义绘图。`CAShapeLayer`继承自`CALayer`,专门用于...

    iOS CoreAnimation 图层几何学

    iOS CoreAnimation 图层几何学是iOS开发中关于动画和视图呈现的重要部分,它涉及到CALayer对象的几何属性,如位置、尺寸以及如何在...通过理解和熟练运用这些概念,开发者可以创建出更具动态性和交互性的iOS应用程序。

    iOS CALayer 思维导图

    position和center属性则用于设置图层相对于父视图的位置,其中anchorPoint属性以单位坐标表示,类似于时钟指针位置的变换。通过调整anchorPoint可以实现图层的旋转效果。 在显示OpenGL图形方面,开发者通常不需要...

    ios-贝塞尔曲线实现有动画的画圆.zip

    首先,创建一个UIBezierPath实例,通过`addArc(withCenter:radius:startAngle:endAngle:clockwise:)`方法画出一个圆弧。然后,利用CAShapeLayer将这个路径设置为形状层的路径。接着,可以创建一个CADisplayLink或...

    ios的hitTest方法以及不规则区域内触摸事件处理方法

    let distance = hypot(point.x - circleCenter.x, point.y - circleCenter.y) if distance return self // 触摸点在圆内,返回self表示该视图接收到触摸事件 } else { return super.hitTest(point, with: ...

    ios-卡牌切换效果.zip

    Objective-C中的`UIView.animateKeyframesWithDuration:delay:options:animations:completion:`方法可以用来创建动画序列,通过改变视图的transform属性(如`CGAffineTransformMakeRotation`)来实现卡片的旋转效果...

    Programming iOS 7, 4th Edition - 2013.pdf

    - **创建**:使用`CGPathCreateMutable`创建路径,并使用`CGPathMoveToPoint:`, `CGPathAddLineToPoint:`, `CGPathAddCurveToPoint:controlPoint1:controlPoint2:`等方法构建路径。 **2.12 剪辑(Clipping)** - *...

    View的拖拽Demo

    在iOS开发中,拖拽(Drag and Drop)功能是一个常用且重要的交互方式,尤其是在创建用户友好界面时。本文将深入探讨如何实现一个简单的`UIView`拖拽示例,基于提供的标题"View的拖拽Demo"和描述"这是我在学习iOS的...

    给UIView及其子类添加Touch事件

    作者onlylin,源码LNViewTouchsExample,开始 引入UIView+LNTouchs.h头文件 ..._myView.tap = [LNTouchTap tapWithTouchBlock:^(id sender) { ...sender.center = point; NSLog(@"(%f,%f)",point.x,point.y); }];

    视图缩放案例

    6. 缩放中心点(Center Point): 为了使缩放效果更自然,通常会设定一个中心点,使得缩放从该点开始。在iOS和Android中,可以通过设置transform的中心点来实现;在Web前端中,可以使用CSS的transform-origin属性。 7...

    ios开发记录

    _planeView.center=point; } UIActionSheet *action=[[UIActionSheet alloc]initWithTitle:@"提示" delegate:self cancelButtonTitle:@"红" destructiveButtonTitle:@"绿" otherButtonTitles:@"蓝", nil]; ...

    拖动button进行移动

    当手势结束时,我们使用`UIView.animate`来创建一个平滑的动画效果,让button回到新的位置。 除了`UIButton`,其他控件如`UILabel`、`UIImageView`等也可以用相同的方法实现移动效果。只需将上述代码中的`button`...

    IOS游戏开发之五子棋OC版

    在iOS游戏开发中,五子棋是一个经典的案例,它可以帮助开发者熟悉图形绘制、用户交互以及基本的游戏逻辑。...通过五子棋这个游戏,你可以提升你的iOS开发技能,同时了解游戏开发的基本流程和设计原则。

    实现多点触摸

    在iOS开发中,多点触摸(Multi-Touch)是一项核心特性,它允许用户通过手指同时与屏幕上的多个点进行交互,极大地增强了用户的操作体验。Objective-C是苹果开发平台的主要编程语言,非常适合用来实现多点触摸功能。...

    Swift利用纯代码实现时钟效果实例代码

    我们可以使用 UIView 来创建这些指针,并初始化它们的位置。在创建指针时,我们需要设置它们的长度、颜色、锚点和圆角等属性。 创建时针 let hourView:UIView! = UIView.init() hourView.center = self.view....

    简单谈谈Core Animation 动画效果

    3. 属性差异:UIView的位置属性包括frame、bounds和center,而CALayer除了这些,还包含了anchorPoint和position,这两个属性使得对图形的定位和变换更为灵活。 4. 高级功能:通过对CALayer的操作,开发者可以实现...

    swift-最新SWIFT4.0版自定义PageControl椭圆空心圆方形点图片点

    let path = UIBezierPath(ovalIn: CGRect(center: point, size: CGSize(width: radius * 2, height: radius * 2))) if i == currentPage { path.fill(with: UIColor.red) // 实心,可根据需求更改颜色 } else ...

    循环动画

    在iOS开发中,循环动画是一种常见的视觉效果,用于创建连续不断的动态展示,比如加载指示器、按钮动画等。本文将深入探讨如何使用Swift语言来实现一个"圆形动画",即让一个视图沿着圆形路径进行循环移动。 首先,...

Global site tag (gtag.js) - Google Analytics