zoukankan      html  css  js  c++  java
  • [Swift通天遁地]七、数据与安全-(7)创建文件浏览器:以可视化的方式浏览沙箱文件

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
    ➤微信公众号:山青咏芝(shanqingyongzhi)
    ➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
    ➤GitHub地址:https://github.com/strengthen/LeetCode
    ➤原文地址:https://www.cnblogs.com/strengthen/p/10307061.html 
    ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
    ➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

    目录:[Swift]通天遁地Swift

    本文将演示使用开源类库实现可视化的方式浏览沙箱文件目录。

    首先确保在项目中已经安装了所需的第三方库。

    点击【Podfile】,查看安装配置文件。

    1 platform :ios, '12.0'
    2 use_frameworks!
    3 
    4 target 'DemoApp' do
    5     source 'https://github.com/CocoaPods/Specs.git'
    6     pod 'FileBrowser'
    7 end

    根据配置文件中的相关配置,安装第三方库。

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

     1 import UIKit
     2 //引入已经安装的第三方类库
     3 import FileBrowser
     4 
     5 class ViewController: UIViewController {
     6 
     7     override func viewDidLoad() {
     8         super.viewDidLoad()
     9         // Do any additional setup after loading the view, typically from a nib.
    10         
    11         //添加一个按钮,当用户点击该按钮时,弹出文件浏览器窗口。
    12         let button = UIButton(type: .roundedRect)
    13         //设置按钮的显示区域
    14         button.frame = CGRect(x: 80, y: 180,  150, height: 44)
    15         //设置按钮的背景颜色为橙色
    16         button.backgroundColor = UIColor.orange
    17         //设置按钮的前景颜色为白色
    18         button.tintColor = UIColor.white
    19         //设置按钮在正常状态下的标题文字
    20         button.setTitle("Open file browser", for: .normal)
    21         //给按钮绑定点击事件
    22         button.addTarget(self, action: #selector(ViewController.openFileBrowser(_:)), for: UIControl.Event.touchUpInside)
    23         
    24         //设置根视图的背景颜色为橙色
    25         self.view.backgroundColor = UIColor.orange
    26         //将按钮添加到根视图
    27         self.view.addSubview(button)
    28     }
    29     
    30     //添加一个方法,用来响应按钮的点击事件
    31     @objc func openFileBrowser(_ button:UIButton)
    32     {
    33         //初始化一个文件浏览器对象
    34         let fileBrowser = FileBrowser()
    35         //以模态窗口的方式,打开浏览器窗口。
    36         self.present(fileBrowser, animated: true, completion: nil)
    37         
    38         //处理用户在文件浏览器中,选择某个图片文件的事件。
    39         fileBrowser.didSelectFile = { (file: FBFile) -> Void in
    40             //获得被选择的文件在沙箱中的路径。
    41             let imagePath = NSHomeDirectory() + "/Documents/"+file.displayName
    42             //添加一个异常捕捉语句,用来完成读取选择文件的任务。
    43             do
    44             {
    45                 //转换文件路径的格式
    46                 let url = URL(fileURLWithPath: imagePath)
    47                 //加载指定的文件,并存储在数据对象中。
    48                 let data = try Data(contentsOf: url)
    49                 //使用数据对象,生成一个图片文件。
    50                 let img = UIImage(data: data)
    51                 //初始化一个图像视图,用来显示用户选择的图片。
    52                 let imageView = UIImageView(image: img)
    53                 //并将图像视图添加到根视图中。
    54                 self.view.addSubview(imageView)
    55             }
    56             catch
    57             {
    58                 print("Something went wrong :(")
    59             }
    60         }
    61     }
    62     
    63     override func didReceiveMemoryWarning() {
    64         super.didReceiveMemoryWarning()
    65         // Dispose of any resources that can be recreated.
    66     }
    67 }
  • 相关阅读:
    【Linux】没有网的情况下如何安装GCC
    【PL/SQL】PLSQL Developer注册码
    【JS】字符串操作
    【java】svn显示×
    线段树
    病毒感染者
    并查集
    最小的N个和(堆)
    priority_queue的用法
    打印杨辉三角
  • 原文地址:https://www.cnblogs.com/strengthen/p/10307061.html
Copyright © 2011-2022 走看看