您的位置:首页 - 教程 - Swift - 正文
swift简介

苹果在2014年开发者大会上发布了swift语言,随后引起了开发者的高度关注,大有取代oc之意,现在随着swift语言的越发成熟,自己也在没事的时候研究一下,不能被时代所淘汰,嘿嘿。

对比oc语言,自己也觉得有点不同,说明如下:

1:swift没有main函数,相比oc没有把它作为函数的入口类进行执行。

2;swift的文件后缀为.swift,没有.h和.m之分。

3:没有分号,这对很多的开发者来说想必是一种福利吧。

4:他们的常量和变量有类似reactive  native的写法;

还有很多的不同之处,需要我们去发现,探索,最后附上自己写的控件,供大家参考,也随时欢迎大家的批评指正。

 

import UIKit

class ViewController: UIViewController ,UITableViewDelegate,UITableViewDataSource{

    override func viewDidLoad() {
        super.viewDidLoad()
        print("hello, world")
       
        var imageView = UIImageView()
        imageView = UIImageView()
        imageView.frame = CGRectMake(100, 250, 50, 50)
        imageView.image = UIImage(named:"");
        imageView.backgroundColor = UIColor.redColor()
        self.view.addSubview(imageView)
        
        let  mytableview = UITableView(frame: CGRectMake(0, 0, 400, 400), style: UITableViewStyle.Plain)
        self.view.addSubview(mytableview)
        mytableview.delegate = self;
        mytableview.dataSource = self;
    }
    func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 1
    }
    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 10;
    }
    func  tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
        return 60
    }
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
       let  cell = UITableViewCell(style: UITableViewCellStyle.Value1, reuseIdentifier: nil)
        cell.textLabel?.text = "我爱你"
        cell.detailTextLabel?.text = "gaga"
        //每一行有一个下载按钮
        let btn:UIButton = UIButton(type: UIButtonType.Custom)
        btn.frame = CGRectMake(UIScreen.mainScreen().bounds.width-100, 10, 80, 50)
        btn.setTitle("下载", forState: UIControlState.Normal)
        btn.setTitleColor(UIColor.blackColor(), forState: UIControlState.Normal)
        btn.backgroundColor = UIColor.redColor()
        btn.tag = indexPath.row
        btn.addTarget(self, action: "btnClick:", forControlEvents: UIControlEvents.TouchUpInside)
        
        cell.contentView.addSubview(btn)
        return  cell
        
        
    }
    func btnClick(sender:UIButton){
        
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

评论: