`

iPhone中frame与bounds的区别 .

    博客分类:
  • ios
ios 
阅读更多
frame和bounds是UIView中的两个属性(property)。


frame指的是:该view在其父view坐标系统中的位置和大小。参照点是父视图的坐标系统,即为相对坐标。


bounds指的是:该view在本身坐标系统中的位置和大小。参照点是本身的坐标系统,即为绝对坐标。

可参照下图理解其区别:

[img]

[/img]
  • 大小: 122 KB
分享到:
评论

相关推荐

    iphone操作摄像头

    previewLayer.frame = view.layer.bounds view.layer.addSublayer(previewLayer) ``` 6. **启动会话** 最后,启动会话以开始捕获: ```swift captureSession.startRunning() ``` 7. **实现代理方法** ...

    iphone程序播放视频文件

    接着,创建一个AVPlayerLayer,设置其大小与视图的bounds相匹配,并将其添加到videoView的layer上。最后,调用player的play()方法开始播放视频。 如果你使用Objective-C,代码会类似如下: ```objc #import ...

    (0145)-iOS/iPhone/iPAD/iPod源代码-图像(Image)-Image Reflection

    这可以通过创建一个新的UIImageView并设置其frame和image属性与原始视图相同来实现。 ```swift let reflectionImageView = UIImageView(frame: originalImageView.frame) reflectionImageView.image = ...

    ZXing扫描二维码在iphone中的使用Demo

    previewLayer.frame = view.layer.bounds view.layer.addSublayer(previewLayer) let metadataOutput = AVCaptureMetadataOutput() captureSession.addOutput(metadataOutput) metadataOutput....

    IPHONE视频播放代码

    playerLayer.frame = view.bounds view.layer.addSublayer(playerLayer) ``` 5. 开始播放: ```swift player.play() ``` 6. 可选:添加播放控制,例如暂停、播放、停止等,可以通过监听AVPlayer的status或...

    (0099)-iOS/iPhone/iPAD/iPod源代码-标签(Label)-Scrolling Marquee Label

    newX = view.bounds.width - label.frame.size.width } label.frame.origin.x = newX } ``` 4. 最后别忘了在适当的地方(如视图控制器的`deinit`或`viewDidDisappear`)取消定时器,防止内存泄漏: ```swift ...

    iPhone坐标系统

    iPhone坐标系统是iOS开发中基础且核心的知识点之一,对于初学者来说,了解并掌握这一系统对于布局UI界面,以及后续开发中涉及到视图、动画、交互等多方面都是至关重要的。 首先,iPhone坐标系统是以左上角为原点(0...

    iphone用Animation实现动画效果

    同样的,如果要向下、向中移动,只需改变`frame.origin.y`的值即可: ```swift // 向下移动 UIView.animate(withDuration: 0.5) { self.myView.frame.origin.y += 50 } // 向中移动,假设初始位置不在中心,需要...

    iphone二维码扫码代码

    previewLayer.frame = view.layer.bounds ``` 在实际应用中,你可能还需要添加权限检查、界面布局、错误处理等功能。对于“www.pudn.com.txt”和“report_draft_3”,这两个文件名可能指的是在开发过程中使用的文档...

    IOSUIFrame用法

    4. **自动布局与约束**:在Auto Layout环境中,`frame`的值可能不会立即反映在屏幕上,因为系统会根据约束进行调整。只有在布局完成时,`frame`才会反映出最终的位置和大小。 5. **视图层次**:`UIFrame`还可以帮助...

    StitchedStreamPlayer.zip_iphone_player

    playerLayer.frame = self.view.bounds; [self.view.layer addSublayer:playerLayer]; ``` 在播放控制方面,我们可以监听AVPlayerItem的status属性变化,以判断是否可以开始播放。同时,可以通过设置AVPlayer的...

    ios电话面试题库

    本资源摘要信息涵盖了 iOS 电话面试的常见题库及答案,涵盖了 Push 原理、 View Controller 生命周期、 Frame 和 Bounds 的区别、 SQLite 中插入特殊字符的方法、数组和集合的认识、 Socket 编程简述、冒泡算法等多...

    iOS 实现霓虹灯操作

    3. **适配iPhone 5**:由于iPhone 5的屏幕分辨率和比例与其他设备不同,需要确保霓虹灯视图的大小和位置正确。在`NeonView`的初始化方法中,你可以检查屏幕的尺寸并调整视图的frame。 ```swift override init(frame...

    iPhone开发【十一】多视图技术总结之三:Page Control

    "iPhone开发【十一】多视图技术总结之三:Page Control"这个主题聚焦于使用UIPageControl来实现滑动浏览多个页面的效果,这在许多应用中常见,如相册、教程或者轮播广告等。UIPageControl是iOS SDK中的一个控件,它...

    iPhone播放本地视频 多媒体源码_ios源码

    playerLayer.frame = view.bounds view.layer.addSublayer(playerLayer) ``` 6. **播放视频**: 最后,启动视频播放: ```swift player.play() ``` 7. **控制播放状态**: 你可以使用AVPlayer的`play()`, ...

    iphone 实例 tableview 03

    在iOS开发中,`iPhone`应用的界面设计与交互至关重要,`UITableView`是苹果提供的一种基本组件,用于展示列表或表格形式的数据。本实例“`iphone 实例 tableview 03`”着重讲解如何在`UITableView`中添加背景图片,...

    AVFoundation iphone流媒体编程基础

    playerLayer.frame = view.bounds view.layer.addSublayer(playerLayer) player.play() ``` ##### 4. **AVAsset** `AVAsset` 是一个抽象基类,表示一个媒体资产,可以是视频、音频或者图像文件。它提供了一个统一...

    iphone开发地图调用

    本文将详细讲解如何在iPhone开发中调用地图,主要围绕标题“iPhone开发地图调用”展开,结合描述中的“完整的代码希望有用”,我们将探讨地图API的使用,特别是与地图标注相关的知识点。 首先,我们需要引入Apple的...

    (Swift)获取屏幕间距-类

    在iOS中,`UIScreen`类提供了与设备屏幕相关的属性和方法。我们可以通过`UIScreen.main`来访问主屏幕对象,然后获取其尺寸。屏幕的宽度和高度可以用`bounds.size.width`和`bounds.size.height`来获取,这将返回设备...

    iOS状态栏frame计算问题的实现

    总之,理解并处理iOS状态栏frame的计算问题,是iOS开发中的一个重要环节,尤其是在创建自适应布局时。通过检查设备类型、状态栏高度和使用适当的安全区域,可以确保你的应用在各种情况下都能提供良好的用户体验。

Global site tag (gtag.js) - Google Analytics