zoukankan      html  css  js  c++  java
  • swift3.0  代码创建经典界面的九宫图--优化篇

    在上一篇只是简单实现了九宫图效果,本章需要形成APP界面九宫图效果

     override func viewDidLoad() {

            super.viewDidLoad()

            createnine()

        }

    //九宫图算法

        func createnine(){

    //高

            let kAppViewH:CGFloat=80

    //宽        

    let kAppViewW:CGFloat=80

    //行个数

            let kColCount:Int=3

    //间隔 

            let kStart:Int=20

             

            let MarginX:CGFloat=(self.view.frame.size.width-CGFloat(kColCount)*kAppViewW)/CGFloat(kColCount+1)

            let MarginY:CGFloat=10

            

            for i in 0 ..< 12 {

                let row:Int=i/kColCount;

                let col:Int=i%kColCount;

                let colF:CGFloat=CGFloat(col);

                

                let x=MarginX+CGFloat(col)*(kAppViewW+MarginX);

                let y=CGFloat(kStart)+MarginY+CGFloat(row)*(kAppViewH+MarginY);

                

                var imageView=UIImageView(image: UIImage(named: ""))

                imageView.frame=CGRect(x: 0, y: 0, 60, height: 60)

                //增加Lable

                var  nameLabel=UILabel(frame: CGRect(x:0, y: 60, Int(kAppViewW), height: 20))

                nameLabel.text="功能"

                nameLabel.textAlignment=NSTextAlignment.center

                nameLabel.backgroundColor=UIColor.blue

                

                //var btnBuuton=UIButton.button

    //增加按钮 

                let btnButton=UIButton(frame: CGRect(x: 0, y: 20, 60, height: 60))

                btnButton.tag=i

                btnButton.setTitle("按钮", for: UIControlState.normal)

                btnButton.addTarget(self, action: #selector(btnClick(sender:)), for:

                    .touchUpInside)

                let view=UIView(frame: CGRect(x: x, y: y, kAppViewW, height: kAppViewH))

                view.backgroundColor=UIColor.red

                view.addSubview(imageView)

                view.addSubview(nameLabel)

                view.addSubview(btnButton)

    //加入视图

                self.view.addSubview(view)

            }  

        }

    效果如下 

  • 相关阅读:
    AO-XXXX
    最基础的rpm命令
    yum插件
    adjtimex修改tick值用法举例
    [工具]iostat
    chrony配置介绍
    CentOS / RHEL 7 : Chrony V/s NTP (Differences Between ntpd and chronyd)
    NTP测试1
    shell使用eval进行赋值bc计算,bad substitution
    Free中的buffer和cache理解
  • 原文地址:https://www.cnblogs.com/meetweb/p/7575668.html
Copyright © 2011-2022 走看看