频道栏目
首页 > 资讯 > IOS > 正文

Swift 开发教程之利用 泛型 便利 xib 的加载过程

17-11-29        来源:[db:作者]  
收藏   我要投稿

Swift 开发教程之利用 泛型 便利 xib 的加载过程。

//
//  UIView+Extension.swift
//  BasicSwift
//
//  Created by CoderZYWang on 2017/11/28.
//  Copyright © 2017年 hc. All rights reserved.
//

import UIKit

/// 加载 UIView 类型的 xib
func loadNib(_ : T.Type) -> T where T: UIView {
    return Bundle.main.loadNibNamed("\(T.self)", owner: nil, options: nil)?.first as! T
}

/// 加载 UIView 类型的 xib(并设置 frame 参数)
func loadNib(_ : T.Type, frame: CGRect) -> T where T: UIView {
    let TView = loadNib(viewType)
    TView.frame = frame
    return TView
}

 

 

//
//  HomeViewController.swift
//  BasicSwift
//
//  Created by CoderZYWang on 2017/11/27.
//  Copyright © 2017年 hc. All rights reserved.
//

import UIKit

class HomeViewController: UIViewController {
    override func viewDidLoad() {
        setUpUI()
    }
}

extension HomeViewController {
    func setUpUI() {
        view.backgroundColor = UIColor(hex: "FF5A39", alpha: 0.5)
    
        let laolaoView = loadNib(LaoLaoView.self, frame: CGRect(x: 20, y: 220, width: 300, height: 150))
        view.addSubview(laolaoView)
        
        let laolaoView02 = loadNib(LaoLaoView.self)
        view.addSubview(laolaoView02)
        laolaoView02.frame = CGRect(x: 20, y: 400, width: 200, height: 120)
    }
}
相关TAG标签
上一篇:参数的相关内容
下一篇:C# 使用Emit深克隆的方法
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站