Tag: 提示

Swift和iOS良好做法#12中代码质量和简洁性的提示

导入SomeExternalFramework FooViewController类:UIViewController,FoobarDelegate { let foo:富 private let fooStringConstant =“ FooConstant” 私人让floatConstant = 1234.5 // MARK:生命周期 //自定义初始化程序转到此处 // MARK:查看生命周期 覆盖func viewDidLoad(){ super.viewDidLoad() // … } // MARK:布局 私人函数makeViewConstraints(){ // … } // MARK:用户互动 func foobarButtonTapped(){ // … } //标记:FoobarDelegate func foobar(foobar:Foobar,didSomethingWithFoo foo:Foo){ // … } // MARK:其他助手 私人功能displayNameForFoo(foo:Foo){ // … } } 如果您不打算对一个类进行子类化,请将其定为final 。 对tableview进行两个扩展 (一个用于数据源,另一个用于委托方法)。 […]

直接从锁屏通过Dropbox提交费用收据

轮班完成:提示和技巧 适用于iOS设备(iPhone / iPad)的Dropbox应用程序具有这个巧妙的小窍门,可帮助您及时了解费用收据。 这种方法的妙处在于,设置好之后,您无需再进行锁屏操作,例如在接待客户晚餐时就可以收据了。 设定 1.在您的iOS设备上,从App Store下载Dropbox。 2.登录或设置一个新帐户。 3.从屏幕顶部向下滑动以显示通知中心。 向右滑动即可切换到“今天”屏幕。 点击圆形的“ 编辑”按钮。 (请注意,可能已经列出了一些应用程序小部件,在这种情况下,您必须向下滚动到页面屏幕的底部) 4.点击“ Dropbox”旁边的+图标 5. Dropbox可以添加到左列或右列区域。 点击完成以确认。 使用Dropbox锁屏小部件 现在,我们将从您的锁屏上捕获并上传费用收据。 想象一下,您在一家餐馆里,刚刚与客户举行了一次早餐会。 您已经用卡付款,用现金支付了小费,并且刚刚收到了收据。 接下来是要做什么: 1.使用相机从锁屏菜单上拍摄收据照片: 2.返回默认的锁屏,向右滑动。 找到“ Dropbox”小部件,然后点击“ 上传照片”选项。 3. Dropbox应用程序将打开,您将必须输入PIN码或使用TouchID继续。 现在,选择要上传的照片,然后点击选择文件夹 。 4.点击屏幕底部的“ 创建文件夹”选项,创建一个名为“费用收据”的新文件夹。 5.现在,在屏幕顶部点击刚刚创建的Expense Receipts文件夹,然后在底部点击“设置位置”。 6.收据中的照片将带有通用时间戳记,因此最好将其重命名为便于以后处理的名称。 点击文件旁边的向下箭头 ,然后在出现的菜单中点击“ 重命名 ”。 7.将文件名更改为更具描述性的名称。 我们完成了! 设置完成后,此工作流程将变得轻松快捷。 它大约需要30秒钟才能完成,比在将来的某个时刻要花大量的物理收据快得多。 每周将这样的故事发送到您的收件箱中: 订阅GSD新闻 。

成功开发iOS App的5条提示

苹果公司是领先的移动平台之一,因此为苹果公司用户开发应用程序(无论是针对iOS,watchOS还是tvOS的应用程序)对于企业所有者而言都是巨大的收益。 苹果公司以其高质量的应用程序和对iOS应用程序开发人员的严格要求而闻名。 遵循标准惯例来接受App Store不仅很重要,而且对于用户友好性和可用性也是必不可少的。 iOS开发技巧 1.您内容的布局 一个好的经验法则是,内容应适合屏幕,以便用户无需向左或向右滚动。 Apple iOS设计的三个基本规则是清晰度,尊敬度和深度。 清晰度:请务必使文本足够大,以便在移动设备上轻松阅读。 尊敬的:布局应该流畅且直观。 避免过多的阴影,边框和渐变。 在没有争夺聚焦于基本对象(例如图像和文本)的设计的情况下,使设计整洁。 深度:由于用户浏览每个屏幕,因此应该考虑他们会渗透更具体的内容。 字体大小也很重要。 您的用户不需要放大或缩小即可阅读您的内容。 字体颜色也是一个因素,因为在移动屏幕上很难看到较浅的字体,尤其是在用户不在阳光下的情况下。 市场上有几种仿真器,可用于在将其发布到应用程序商店之前检查其布局。 图像和内容应随屏幕缩放,但是市场上有几种屏幕尺寸。 即使不能全部测试它们,也请确保检查最通用的那些。 最近,该类型支持iPhone 5,而最新的代码则至少应支持iOS9。一些开发人员支持iOS8。通常,从当前发布的版本开始保持“ n-1”的向后兼容性是很好的。 但是,通常也要等到用户群降至阈值以下才弃用对版本的支持。 决定要支持的操作版本是开发人员的责任。 2.在设计UI元素时要牢记3D Touch 对于刚接触移动应用程序开发的开发人员而言,很难从小按钮和链接移至较大的对象,从而使用户可以轻松选择下拉项或点击元素。 最好有一部iPhone来查看直观设计的工作方式。 例如,当用户点击一个下拉元素时,将显示一个弹出窗口,其中包含用户向上或向下滚动的项目列表。 用户选择一个项目后,您的应用程序应移至下一个元素,并使其对用户可见。 请记住,具有3D触摸功能的设计UI元素与移动应用程序而不是台式机的工作方式大不相同。 您的设计元素应与目标平台匹配。 看一下iOS的标准组件。 请注意,它们与Android不同。 创建标准的UI元素有助于使您的应用对用户而言更加直观。 3.使用错误处理陷阱错误 每个编码器偶尔都会在其程序中产生逻辑错误。 用户插入您没有管理的意外输入也没什么不同。 例如,也许您有一个用于用户区号的输入文本框。 您检查字母字符,但是忽略检查特殊字符,例如感叹号或问号。 如果以后将数据存储在数字存储系统中,则应用程序将潜水。 应当对这些逻辑错误进行管理,以使应用程序永不崩溃。 或者,应将错误消息返回给用户。 iOS应用应使用错误协议。 您可以从类中确定自定义错误消息。 让我们考虑一个客户端错误枚举器的示例。 enum InputError : Error { case notNumeric case […]

快速Swift技巧I

字典作为一线开关/盒 从技术上讲,您可以使用字典将switch case块重写为一行。 首先,创建一个字典,其中每个对都将大小写条件作为键,并将其对应的返回值作为值。 最后,由于字典在运行时可能有也可能没有键,因此我们使用nil合并运算符来处理默认情况。 例如,看看我们如何转换开关盒并返回带有其IndexPath的单元格高度: 自然,这种类型的重写将取决于您先前的逻辑有多复杂。 另外,请记住,并非总是单衬板是最佳选择。 您应该始终优先考虑代码的可读性。 但是,拥有另一种选择总是很好。 可变参数 可变参数是函数参数,其行为类似于常量数组,但在调用时以不同的方式表示。 代替使用数组符号,传递的元素用逗号分隔。 如果要使用这些参数构建自己的函数,只需声明参数的类型,后跟3个点。 例如,查看以下简单的UIView扩展以在单个调用中添加多个子视图: 在这里,我们可以根据需要传递尽可能多的参数。 但是,每个函数只能有一个可变参数。

如何在iOS 12中通过屏幕时间控制小工具的使用

艾伦·斯通布里奇(Alan Stonebridge) 您是否真的知道每天花费多少时间拿起iPhone检查事物? 在这里和那里的几分钟很快就累了,而且由于您可能不愿意手动记录iPhone和iPad的使用,因此Screen Time可以为您完成操作。 这项新功能使那些相同的设备能够在控制小工具内的过程中发挥作用。 您可以使用它来:了解您的行为; 设置软限制,以在每日配额用完时引导您朝正确的方向前进; 并设置铁杆锁定,以停止活动,直到输入密码为止。 有真正的小工具成瘾吗? 找一个朋友看管代码,并尽自己的良心。 此功能也可以应用于“家庭共享”组的其他成员,以帮助您的孩子养成更健康的习惯。 监控您的统计信息 您无需记住访问“屏幕时间”的设置来检查使用情况。 您会收到定期通知,以检查您的每周报告,如果您想在习惯此功能时更随意地关注事情,请在“锁定”屏幕或第一个主屏幕上向左轻扫以进入“今日”视图,然后滚动在其底部,点击“编辑”,然后添加“屏幕时间”小部件。 Mac呢? 屏幕时间在Mac上不可用,即使在macOS Mojave中也是如此。 您将需要意志力来避免浏览未记录的分钟。 如果您迫不及待想看看苹果是否会在将来添加它,请尝试Timing的Productivity版(39英镑,timingapp.com)。 如何开始使用“屏幕时间” 1开启 转到“设置”>“屏幕时间”(第二组向下),然后打开该功能。 系统将询问您要设置的设备是您的还是孩子的。 我们已经写了此建议,就像设置您自己的设备一样,但是您可以通过在此页面的“家庭”标题下轻按每个家庭成员的姓名,对每个家庭成员应用相同的方法,但设置不同。 2简单概述 顶部的框显示了您今天在所有iOS 12设备上花费了多少,并将其细分为主要类别以及在每种设备上花费了多长时间。 您可能不在乎是否花费了大量时间使用生产力应用程序,但是如果发现自己在社交网络或游戏上花费了大量时间,则可能会有所不同。 3整理数据 要大致了解已登录到您的iCloud帐户的所有iPhone和iPad的使用情况,请降低“跨设备共享”功能。 然后,该页面汇总了所有已注册的iOS设备中的数据。 不过,您仍然可以查看单个设备的使用情况:首先点击顶部组中的“所有设备”。 4更详细的信息 最初,下一页显示了您已打开“屏幕时间”的所有设备的数据,但仅今天。 使用顶部的标签查看平均每日使用量以及上周的总计-后者可能会鼓励您限制自己的活动。 将手指放在图表中的条形上以获取该时间段的信息。 点按设备以选择要查看其数据的单个设备。 如何使用“屏幕时间”的数据 1您最常使用的 “最常使用”组列出了应用程序和网站。 点击一个以获取更多信息。 根据上一页的选择,您会看到每小时或每天的细分。 将手指放在条形上并在图表上滑动以了解每个时间段。 2按应用限制 认为您过多使用应用程序或网站? 点击添加限制,然后在大多数情况下拨入所需的限额。 如果您想在某些天(例如,在周末)花费更多或更少的时间,请点击一天的“自定义天数”,然后拨另一个额度。 3按类别限制 返回“屏幕时间”设置的顶层,点击“应用程序限制”,然后点击“添加限制”。 此处的区别在于,该限制会影响您选择的类别的所有应用。 每周和每天的覆盖也可以在此处应用。 4造成停机 停机时间是一天中可以完全阻止使用设备的时间。 比如说晚上的家庭聚会。 […]

成为Swift 3绝地大师

与Objective-C相比, Swift增加了语言功能,使开发人员的代码更安全 , 更快 , 更可靠 , 更可预测 。 1创建一个Swift文件来管理您的样式 设置外观属性的最简洁方法: 为您创建的每个标签或按钮设置颜色和字体 ,只需创建一个扩展某些类的Swift文件。 您可以在两分钟内更改应用程序的样式。 🎨 使用静态的计算变量。 Swift 3允许我们使用没有任何初始化程序的变量。 // Colors.swift 扩展UIColor { 静态var buttonColor:UIColor { 返回UIColor(红色:0.50,绿色:0.50,蓝色:0.50,alpha:1) } 静态var bodyColor:UIColor { 返回UIColor(红色:0.30,绿色:0.0,蓝色:0.30,alpha:1) } 静态var backgroundColor:UIColor { 返回UIColor(红色:0.00,绿色:0.7,蓝色:0.40,alpha:1) } } // FontStyles.swift 扩展UIFont { 静态var bodyFont:UIFont { 返回UIFont(名称:“ Helvetica”,大小:14) } 静态var titleFont:UIFont { 返回UIFont(名称:“ Helvetica-Bold”,大小:18) } } […]

使用CocoaPods托管内部私有框架

当您拥有需要在公司内部的iOS开发人员之间共享而无需公开的框架时,可以使用私有的CocoaPods存储库来实现。 在这篇博客文章中,我将逐步向您展示如何做到这一点。 您应该已经安装了CocoaPods,否则请安装它: 须藤宝石安装cocoapods 在公司的Github,Bitbucket或Gitlab上创建私有存储库: 2.提供所有iOS团队成员的访问权限。 3.添加您的私人规格: pod repo add specsName https://code.company.com/podspecs.git 注意 :它将添加到通行证~/.cocoapods/repos 4.准备好吊舱后,将CocoaPod规格推到远程位置: pod repo push specsName MyPod.podspec 要么 pod repo push –allow-warnings specsName MyPod.podspec 5.当您需要使用内部Pod时,只需将您的私有podspecs源和期望Pod添加到Podfile中: source ‘https://code.company.com/podspecs.git’ source ‘https://github.com/CocoaPods/Specs.git’ platform :ios, ‘11.0’ target ‘MayApp’ do use_frameworks! pod ‘MyPod’ end

5个提示:雇用iOS应用开发代理

寻找iOS应用开发机构吗? 在雇用技术合作伙伴之前,您应该了解以下内容。 iOS App Store上每个类别都有数百万个应用程序? 那么,如何使您的应用脱颖而出? 这是一个重要的问题,并且与您的iOS应用程序开发投资密切相关。 好吧,如果您没有内部的iOS开发人员团队,并且希望由代理商来完成开发,那么以下五个技巧可帮助您雇用合适的iPhone应用程序开发代理商 。 1.撰写有效的工作岗位 雇用技术合作伙伴涉及邀请技术合作伙伴提供报价或估算。 但是,如何从相关技术合作伙伴处获得相关报价是一个重要的问题。 因此,该过程始于撰写有效的职位。 工作岗位的三个关键要素是: 结果:您期望什么可交付成果? 2.技能:您正在寻找什么技能,编程语言,API,SDK等? 3.目标:您的截止日期是什么? 您是否将应用程序开发分解为多个阶段? 2.掌握Sound Swift编程知识,押注iOS开发人员 找到想要的编程人才并不难。 借助Internet和移动应用程序等扩展的虚拟感官,可以轻松地将其吸引到更广泛的受众。 利用工作门户,StackOverflow等技术平台,LinkedIn,WishList等专业网络。Swift是Apple最新的编程语言,并且配备了各种资源,以确保敏捷和安全的编码。 3.寻找以业务为中心的iOS应用开发公司 出人意料的是,没有多少人真正了解企业pp的目标或用户对它的期望。 因此,您应该明智地选择iOS应用开发公司。 可以通过以前构建的应用程序了解它们的细致性。 记录他们在iOS App Store等公认的应用程序分发平台上的实时项目。 4.寻找敏捷的iPad或iPhone应用程序开发 基于敏捷的软件开发可将设计人员,开发人员和软件合规性监控人员聚集在同一页面上,从而有助于立即修复错误和增加产品质量。 这样的关联可确保您的应用程序保持最新状态并与用户的期望相关。 5.评估技术合作伙伴的信誉 品牌信誉是重要的方面,与技术公司联系时必须考虑品牌信誉。 当您雇用某个知名品牌时,显然意义不大,因为这将获得可观的市场信任,但是如果您要与一家初创公司合作,则必须权衡利弊。 确定该品牌具有处理业务短期和长期目标的专业知识和能力。

基础知识:Swift最佳做法

最近,我的伙伴对编程表现出了兴趣,因此自然而然地我推荐Swift作为一种很好的语言。 我花了很多时间亲自研究了Swift的最佳实践,我想确保她确实遵循了整个Swift社区的最佳/常见实践(我认为其中有些是最佳实践),并且没有从一些那里的教程。 即使这些教程为初学者提供了一个很好的起点,我也注意到一些确实困扰我的做法,我建议您反对。 注意 我应该指出, 这要取决于我在编写Swift代码时的最佳做法以及我在社区中的研究中所收集的内容。 我敢肯定会有人不同意,这很好。 我仍然会睡个好觉😉 首先,让我们从合作伙伴搜索初学者教程时遇到的编码实践开始。 我还将介绍与其他开发人员一起进行项目时所经历的一些经验。 1)冒号空间 尽管这看起来很小,因为它只是一个空格,但是它可以大大提高代码的可读性。 推荐的 命名:字符串 不建议 让名字:字符串 命名:字符串 让名字:字符串 简单。 在冒号之后,在类型之前添加一个空格。 2)花括号 当谈到花括号时,通常似乎是一个意见问题。 但是,在浏览互联网上的一些样式指南,Apple文档中的示例以及我个人的看法时,确实有一个赢家。 推荐的 如果isValid && list.count == 0 { …}否则,如果isValid { …}其他{ … } 不建议 如果isValid && list.count == 0 { …} 否则,如果isValid { …} 其他{ … } 要么 如果isValid && list.count == 0 […]

迅捷每周提示– III

大家好, 我们正在分享“快速每日提示”的第三包。 每周提示列表 传递运算符 算子∈ CaseIterable协议 随机播放和随机播放功能 计算属性 静态类型属性 类型方法 如果您想分享技巧,则可以从GitHub打开请求请求。 您还可以阅读 Weekly I和 Weekly II 。