首页 > 其他分享 >开发一个最简单的iOS App

开发一个最简单的iOS App

时间:2022-12-10 14:44:06浏览次数:58  
标签:控件 工程 App iOS 文件夹 简单 TensorFlow

开发一个最简单的iOS App

大家好,我是孜孜不倦学习的Zhangbeihai。
上月底我组织了【组队学习】TensorFlow 入门课程(中文)
,截至目前有300多同学加入。主要就是 TensorFlow LiteTensorFlow.jsTF Serving的实操,其实今年3月份我就接触 TensorFlow.js 了,当时还写了一篇入门教程:TensorFlow.js 用浏览器玩机器学习,9月在谷歌开发者大会上,我还亲身体验了这些黑科技,非常奇妙。

但是作为一个对开发一无所知的人,我也想尝试借助 TensorFlow Lite 在 Android 和 iOS 上部署并使用机器学习模型。Learn by doing是我最推崇的学习方法,所以就跟着课程第第四章code了一下,收获满满,本文即为我做的学习笔记。

准备工作

0 买一台Mac
1 从 App Store 安装Xcode
2 从 Terminal 安装 CocoaPods

brew install cocoapod

Cocoapods是一个用来帮助我们管理第三方依赖库的工具,他可以解决库与库之间的依赖关系,下载库的源码,同时通过创建一个 Xcode 的 workspace 来将这些第三方库与我们的工程连接起来,方便开发使用。

开始开发

打开Xcode,新建一个Project

类型选iOS App

填上工程名称,登录开发者账号,interface选StoryBoard,语言选Swift,保存到指定位置。

初始化完成后到样子

Terminal 中 cd 到工程文件夹,执行命令pod init

初始化完成后,工程文件夹出现Profile文件

添加Profile文件到工程文件,注意勾选Destination和Added folder

修改Profile,安装TensorFlowLiteSwift

回到命令行pod install 保存的工程文件会出现一个Pods文件夹

把这个Pods文件夹copy到我们的工程文件夹比如我的是tf-demo


下面开始设计用户界面

用快捷键shift+cmd+L或点击右上角+号,打开控件库,把需要的空间拖到界面上,效果如下

然后点击左上角 ▶️ 可以先看看效果

蛮酷的

然后,为了便于编辑源程序,我们可以把屏幕分为左右两个部分,在右侧屏幕显示ViewController,效果如下

按住Control 用鼠标把【输入数字】那个控件拖到UIControloller里

放开鼠标,输入控件类型,【显示结果】控件同样的操作,名称:ResultLabel

【计算】控件操作类似,只是Connection要选择 Action ,Name填onClicked

想要的效果是,当点击计算按钮时,显示结果那里变成输入控件输入的内容。

只需在onClicked函数中

    @IBAction func onClicked(_ sender: Any) {
        ResultLabel.text = inputText.text
    }

点击播放,看看效果

至此,我学会了开发最简单的iOS APP

希望先成为微信好友,后成为公众号读者

标签:控件,工程,App,iOS,文件夹,简单,TensorFlow
From: https://www.cnblogs.com/jpld/p/16971563.html

相关文章

  • mybatis简单使用
    简介:MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过......
  • Linux的free命令与OOM的简单总结
    简介查看操作系统配置最关键的几个命令是lscpu查看CPU信息以及free查看内存信息.不过free信息有一个疑惑点他的free的值可能很小.会让搭建产生误解.这里简单说明一下.......
  • 金蝶云苍穹的简单学习
    金蝶云苍穹的简单学习简介云苍穹是一套管理控制台云星瀚是一套带各种app的ERP应用。服务管理方式虽然使用的是ubuntu2204的系统.但是都是使用的systemd的管理主要服务信......
  • awk的简单样例
    shellawk求和当第一列相同时,对应的第二列相加awk'{sum[$1]+=$2}END{for(c in sum){print c,sum[c]}}'输入文件名 在Shell中,我们可以用awk实现按列求和的功能,非常简单1......
  • 【自动化测试】Pytest+Appium+Allure 做 UI 自动化的那些事
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......
  • 简单组合逻辑电路
    verilog中的数字表示在VerilogHDL中一个信号可能有如下四种基本的值:i.0:逻辑0或假ii.1:逻辑1或真iii.x:未知iv.z:高阻态(三态)在门电路的输入端或是表达式中的z值通常会......
  • 第140期:flutter中的布局和响应式app
    封面图studyitselfisaboringthing,butitalsoveryuseful.sojustlearnwhatyouwanttolearn,dowhatyouwanttodo.bewhatyouwanttobe.flutter......
  • Linux Hibernate配置以及流程简单分析(@STM32MP157D)
    关键词:1.Hibernate介绍2.Linux下Hibernate配置及操作在内核中使能Hibernation功能:由于Hibernate镜像需要保存在swap文件中,所以在内核中使能swap功能: 由于在hiber......
  • 《“透视”个人大数据》项目开发小记 --(三)Android APP 开发(2)自定ImageView
       在以图片为主的项目数据表界面中,普遍的应用了自定义的ImageView,这增强了图片的表现力。这里以“事件表”介绍一个自定ImageView的实例。这个自定ImageView通过cli......
  • app提交上架最新流程 ios​
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......