首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将UIViewController添加到UIScrollView swift 3

在Swift 3中,将UIViewController添加到UIScrollView的步骤如下:

  1. 创建一个UIScrollView实例,并设置其frame以及contentSize属性。UIScrollView是一个可滚动的视图容器,可以包含其他视图。 示例代码:let scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, width: 200, height: 200)) scrollView.contentSize = CGSize(width: 400, height: 400)
  2. 创建一个UIViewController实例,并将其视图添加到UIScrollView的contentView中。contentView是UIScrollView的子视图,用于承载内容。 示例代码:let viewController = UIViewController() scrollView.addSubview(viewController.view)
  3. 设置UIViewController的视图大小,使其与UIScrollView的contentSize相同。这样UIViewController的视图将能够完全显示在UIScrollView中。 示例代码:viewController.view.frame = CGRect(x: 0, y: 0, width: scrollView.contentSize.width, height: scrollView.contentSize.height)

完整的代码示例:

代码语言:swift
复制
import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))
        scrollView.contentSize = CGSize(width: 400, height: 400)
        
        let viewController = UIViewController()
        scrollView.addSubview(viewController.view)
        
        viewController.view.frame = CGRect(x: 0, y: 0, width: scrollView.contentSize.width, height: scrollView.contentSize.height)
        
        view.addSubview(scrollView)
    }
}

这样,你就成功地将UIViewController添加到了UIScrollView中。UIScrollView将能够滚动以显示完整的UIViewController视图内容。

推荐的腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

iOS 面向协议方式封装空白页功能

Swift除了可以面向对象编程,它还可以面向协议编程。那可不可以也用协议来解决情况呢?...where Self : UIViewController { // 3、的实现的方法写在这里 } 3、定义功能方法 scrollView传递进来,让我们定义的方法来暗地里做些操作 func...,非常地恰巧,我们定义的方法lxf_EmptyDataSet需要外界UIScrollView传递进来,在DZNEmptyDataSet的数据源方法和代理方法也有scrollView。...Self : UIViewController { func lxf_EmptyDataSet(_ scrollView: UIScrollView, attributeBlock: (()-...可以使用Cocoapods的方式来安装使用 pod 'LXFProtocolTool' 我也 iOS - Swift 面向协议编程(二) 中提及的通过协议便捷加载xib的功能也集成了进来。

1.4K50
  • 阅读器多种翻页的设计与实现

    ; 4、用户pan手势结束,根据动画完成程度确定是补齐动画还是回退; 5、处理完动画相关,状态重置为1,接受用户的pan手势; 如果还要支持tap手势,则自动完成一次动画效果,再将状态重置为status_show...通常iOS实现滑动会有两大选择:UIScrollView和UITableView;(UICollectionView和UITableView类似) UIScrollView存在一个较大的局限:上面的视图资源无法回收利用...以下图为例,我们使得UIScrollView的contentSize为(view.width, 3*view.height),偏移contentOffsetY为view.height(初始状态相当于窗口放置在中间...此时我们回收vcB,然后UIScrollView的Y偏移重新改为view.height,回到了初始化状态。...遇到的问题(Q&A): Q:如何实现UIScrollView改变offset,但是继承原来的速度?

    3.3K10

    MyLayout&TangramKit 的重大升级!

    为此当UIScrollView要和AutoLayout进行结合使用并实现滚动能力的话就不能直接所有子视图都添加到UIScrollView中去, 而是需要中间建立一个容器视图,首先将容器视图添加到UIScrollView...所有的子视图A,B,C都添加到容器视图中。...2.UIScrollView的滚动 MyLayout&TangramKit对于处理和UIScrollView进行结合时进行特殊处理,当一个布局视图添加到滚动视图时,布局系统内部会负责处理滚动视图的contentSize...要实现UIScrollView滚动时,只需要在一个滚动视图内添加一个布局视图,然后所有其他子视图都添加到这个布局视图中去,这个和上面的AutoLayout的处理方式是一样的,最后布局视图的尺寸自适应属性设置为...,然后布局视图添加到其他视图中去,不需要再为布局视图设置宽度和高度约束了,也不再限制只能将布局视图添加到contentView中了,也不再需要重载特定的方法了,就相当于一个布局视图当做UILabel

    2.1K20

    自学iOS开发,从新手小白到高级工程师正确的打开方式

    3)语言的基础语句。if-else、switch-case、while、for等。 (4)语言的面向对象特性(如果是面向对象语言的话)。如何去构建一个类,去写一个方法。类或者变量的私有与公有等。...对于UI控件,常用的有UIView、UITableView、UIScrollView、UIButton、UILabel等。你应该熟悉这些控件的属性和相关的操作方法。...还应该熟悉响应的Controller,例如UIViewController,UINavigationController等操作。知道UIViewController的生命周期。...本人学习swift看的是《Swift Programming Language》,学习Objective-C看的是《Objective-C编程全解》。...下面是我当初学的时候写的: 3.进阶 要想进入这个阶段,可能要比前两个阶段困难点了。前两个阶段只是看,思考的东西并不多,基本看了就会,很多人都可以做到。物以稀为贵,越容易学会越不值钱。

    1.8K80

    iOS组件化过程中遇到的问题及解决方案iOS组件化过程中遇到的问题及解决方案

    出参全是NSDictionary /** 创建登录 @param params 入参 @param callBackBlock block回调 @return 日历控制器 */ - (UIViewController...NSMutableDictionary dictionary]; tmpParams[kFNLoginVC_LoginSuccessBlock] = callBackBlock; UIViewController...// 这里处理异常场景,具体如何处理取决于产品 NSLog(@"%@ 未能实例化页面", NSStringFromSelector(_cmd)); return [[UIViewController...VibrationAcquistion框架时,更新到 Cocoapods 的时候出现一个错误,核心语句是 error: include of non-modular header inside framework module,在使用 Swift...-[FNWebViewController retain]: message sent to deallocated instance 0x7fa1974a33f0 因为 WKWebView 的 UIScrollView

    1.8K21

    UIViewController生命周期

    合创建一些附加的view和控件 3、ViewWillAppear 在视图加载完成,并即将显示在屏幕上时,会调用viewWillAppear方法,在这个方法里,可以改变当前屏幕方向或状态栏的风格等。...viewB,第一次添加A和B的layoutSubviews都会被调用,而第二次(viewA已经有了viewB)只调用viewB的 view的Frame变化会触发layoutSubviews 滚动一个UIScrollView...2、UIWindow的主要作用有: 1.作为UIView的最顶层容器,包含应用显示所有的UIView; 2.传递触摸消息和键盘事件给UIView; 把view添加到uiwindow 3、把view...添加到uiwindow上面 (1)直接控制器的view添加到UIWindow中,并不理会它对应的控制器 [self.window addsubview:vc.view]; (2)设置uiwindow...的根控制器,自动rootviewcontroller的view添加到window中,负责管理rootviewcontroller的生命周期 [self.window.rootviewcontroller

    1.9K10

    成为一名优秀 Swift 开发人员的 10 个小技巧

    以下是使用协议的一些场景: 让 modal 与呈现它的组件进行通信; 让多个 UIViewController 或 多个 Cocoa Touch 类实现相同的行为; 在 UITableCell 向父 UIViewControllers...3. 使用标记 从 Objective-C 开始,我就一直很喜欢标记。当控制器有成百上千行代码时,标记就显得很重要了。使用标签来分割和管理代码非常重要,可以在代码中快速导航。...但是 Swift 扩展可以轻松地简单方法集成到通用类上,而无需做任何复杂的事情。...用户可能被迫伸出手来操作它,但是最好实现 UIScrollView 并处理滚动操作以避免键盘覆盖输入内容。 9.使用通知 通知中心是在组件之间分发消息的好工具。...在本文中,我重点更多地放在Swift功能上,以提高代码效率并传递Swift机制的优点。我提供了一些简单的示例,说明每个iOS应用程序和开发人员应关注的重点。 - EOF -

    2.3K40

    Swift| 基础语法(五)

    前言 总结下 swift下的基础语法,里面涉及到:常量&变量、Swift中的数据类型、逻辑分支、循环、字符串相关、数组和字典、方法的书写调用等内容,考虑到阅读体验分多篇来展示,希望对大家学习swift...Swift| 基础语法(一) Swift| 基础语法(二) Swift| 基础语法(三) Swift| 基础语法(四) Swift| 基础语法(五) 本文涉及: 纯代码创建应用根试图 UILabel...{ // 创建UIWindow对象,并初始化该窗口的大小与主屏幕大小相同 let rect : CGRect = UIScreen.main.bounds // 程序创建的...30, y: 300, width: 80, height: 80)) imageV.image = UIImage.init(named: "xixi") let sc = UIScrollView.init...tabbarController.tabBar.backgroundColor = UIColor.black tabbarController.tabBar.barTintColor = UIColor.white // // 3

    2K30
    领券