iOS Swift 按钮控制 简单文件读写

本文介绍如何在iOS应用中使用Swift进行简单的按钮控制和文件读写操作。通过创建UILabel和UIButton,设置按钮标题并添加点击事件,然后实现文件的追加写入和读取内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

class CounterViewController:UIViewController{

    override func viewDidLoad()

    {

        // 显示的调用父类函数 super 表示父类

        super.viewDidLoad()

        

        // -----------------简单的UI控件 UILabel-----------------------

        //  1)创建一个rect 对象

        let rect=CGRect(x:20 ,y:100,width:280, height:40)

        //  2)创建一个UILabel 参数是一个rect对象

        //var label=UILabel(frame:rect)

        // 也可以将(1)2 合成 一下

        var label=UILabel(frame:CGRect(x:20, y:100,width:280, height:40))

        //设置label内容

        label.text=" "

        //设置label字体颜色

        label.textColor=UIColor.blue

        //label 添加到当前视图上

        self.view.addSubview(label)

        

        

        //---------------------简单的UI控件 UIButton--------------------

        // 创建一个UIButton 并且设计frame

        var but=UIButton(frame:CGRect(x:20 ,y:150 ,width:200,height:40))

        //设置UIButton 的标题

        /*func setTitle(title: String!, forState state: UIControlState)

         函数:设置but的名字

         参数说明:

         1)提一个参数是but 的名字

         2)第二个参数是这个表示在按钮那种状态下是这个名字

         说明 .Normal 等价于  UIControlState.Normal

         */

        // 给按钮起一个名字 ,这个按钮在Normal在这个状态下是这个名字

        but.setTitle("按钮",for:.normal)

        

        //but 添加事件

        /*func addTarget(target: AnyObject!, action: Selector, forControlEvents controlEvents: UIControlEvents)

         函数:

         but 添加事件

         1)第一个参数是target, 告诉事件响应的方法在那个对象中

         2)第二个参数是 action SEL  写方法名即可

         3)第三个参数 事件类型 ,响应那种事件

         */

        // but 添加一个TouchUpInside 类型的事件 ,时间显示的方法为butClick:  这个方法是在self 的对象中

        but.addTarget(self,action:#selector(butClick),for:.touchUpInside)

        

        //but添加到视图上

        but.backgroundColor=UIColor.red

        

        //but加入视图

        self.view.addSubview(but)

        

    }

    

    // 按钮的事件

    /*

     func butClick(sender:UIButton)

     

     func 声明函数关键字 butClick函数名 sender 可以理解为调用者but   :UIButton 为调用者类型

     

     

     */

    func butClick()

    {

         //设定路径,tmp目录路径

         let tmpDir = NSTemporaryDirectory()

         var url: NSURL = NSURL(fileURLWithPath: tmpDir+"data.txt")

         

         //定义可变数据变量

         var data = NSMutableData()

         //向数据对象中添加文本,并制定文字code

         data.append("Hello Swift".data(using: String.Encoding.utf8, allowLossyConversion: true)!)

         

         

         let string = "添加一些文字到文件末尾"

         let appendedData = string.data(using: String.Encoding.utf8, allowLossyConversion: true)

         let writeHandler = try? FileHandle(forWritingTo:url as URL)

         writeHandler!.seekToEndOfFile()

         writeHandler!.write(appendedData!)

         

         

         

         //data写文件

         //if data.write(toFile: url.path!, atomically: true){

         //url里面读取数据,读取成功则赋予readData对象,读取失败则走else逻辑

         if let readData = NSData(contentsOfFile: url.path!) {

         //如果内容存在 则用readData创建文字列

         NSLog(NSString(data: readData as Data, encoding: String.Encoding.utf8.rawValue) as! String)

         } else {

         //nil的话,输出空

         NSLog("Null")

         }

         //}else{

         //    NSLog("Failed to Write!")

         //}

    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值