【用Swift开发Mac App(8)】教程文章相关的互联网学习教程文章

用Swift开发Mac App(8)【代码】

关注细节关于用户体验方面,我们仍然有一些细节值得注意。例如:运行App,不要选择任何昆虫,点击“Delete” 或者 “Change Picture” 按钮,什么都不会发生,Why?作为程序员,你当然知道当用户什么都没选择的情况下,不应当执行任何操作,但对于用户而言,这种情况仍然显得不太友好:我们通过以下方式来解决这个问题:· 如果用户选中了某个单元格,我们才让Delete按钮、Change picture按钮、文本框和rating view可用。· ...

macOS SwiftUI 基础之如何设置App登录即可启动(教程含源码)【代码】

macOS SwiftUI 基础之如何设置App登录即可启动(教程含源码)请注意,Mac 应用商店准则要求"在登录时启动"功能才能针对用户操作启用。这通常是通过使其成为默认禁用的首选项来解决的。许多应用程序还允许用户在欢迎屏幕上激活它。使用方法 此包附带了一个启动AtLogin.Toggle,它就像内置的切换,但具有预先定义的绑定和标签。单击视图可切换应用的"登录启动"。 struct ContentView: View {var body: some View {LaunchAtLogin.Toggle...

macOS SwiftUI 封装组件之 可设置高度搜索框NSSearchField(教程含源码)【图】

实战需求 macOS SwiftUI 封装组件之 可设置高度搜索框NSSearchField 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能实现标准搜索框 实现自定义高度基础知识 搜索框Search Fields 搜索字段是一种文本字段样式,已针对在大量值中执行基于文本的搜索进行了优化。许多窗口在工具栏中都包含搜索字段,但是搜索字段也可以显示在窗口的主体区域中。搜索字段显示放大镜图标,并且还可以包含占位符文本和取消按钮...

macOS SwiftUI 封装组件之图片组件NSImageView(教程含源码)【代码】【图】

实战需求 macOS SwiftUI 封装组件之图片组件NSImageView 本文价值与收获 看完本文后,您将能够作出下面的界面基础知识 NSImageView NSImage在帧中显示来自对象的图像数据。 class NSImageView : NSControl总览 图像视图可以是静态的,也可以是可编辑的。静态图像视图仅显示您指定的图像。可编辑的图像视图对象使用户可以更改显示的图像。您还可以配置图像视图以允许复制,粘贴,删除和拖动图像。注意 仅当用户将图像拖动到图像视图...

macOS SwiftUI 经典框架之上下瀑布式工具栏框架(教程含源码)【代码】【图】

实战需求 macOS SwiftUI 经典框架之上下瀑布式工具栏框架 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能垂直布局 ZStack(alignment: Alignment(horizontal: .center, vertical: .bottom)) 垂直间隔.padding(.vertical) 设置阴影体现组件分割 .shadow(color: Color.black.opacity(0.08), radius: 5, x: 0, y: 5) 让顶部组件和关闭按钮融合 .ignoresSafeArea(.all, edges: .all)实战代码 import SwiftUI...

macOS SwiftUI 核心组件之网格显示Unicode内容LazyGrid (教程含源码)【代码】【图】

实战需求 macOS SwiftUI 核心组件之网格显示Unicode内容LazyGrid 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能设置4列 Array(repeating: GridItem(.flexible(), spacing: 15), count: 4) 网格LazyVGrid(columns: columns) 十六进制转Stringlet codepoint = $0 + 0x1f600 let codepointString = String(format: "%02X", codepoint)十六进制转emoji图标let emoji = String(Character(UnicodeScalar(cod...

macOS SwiftUI 如何取消顶部标题栏并让组件置顶 (教程含源码)【代码】【图】

实战需求 macOS SwiftUI 如何取消顶部标题栏并让组件置顶 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能忽略安全区域.ignoresSafeArea() 设置窗体风格.windowStyle()实战代码 1、修改App.Swift文件 import SwiftUI@main struct macos_bar_paddingApp: App {var body: some Scene {WindowGroup {ContentView()}//设置隐藏标题栏风格.windowStyle(HiddenTitleBarWindowStyle())} } 2、设置组件置顶 impo...

macOS SwiftUI 教程之 LazyVGrid和LazyHGrid 使用教程 (教程含源码)【代码】【图】

实战需求 macOS SwiftUI 教程之 LazyVGrid和LazyHGrid 使用教程 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能1、垂直网格容器LazyVGrid 2、网格容器GridItem 3、生产数组 var gridData: [Int] { data.count%2 == 1 ? data.dropLast() : data }基础知识 LazyVGrid 一种容器视图,将其子视图排列在垂直增长的网格中,仅在需要时创建项目。 struct LazyVGrid<Content> where Content : View总览 网格是“...

macOS SwiftUI 教程之 文本编辑器 (教程含源码)【代码】【图】

实战需求 macOS SwiftUI 教程之 文本编辑器 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能NSTextView NSTextViewDelegate基础知识 NSTextView 绘制文本并处理用户与该文本的交互的视图。 class NSTextView : NSText###总览 该类除了支持富文本,附件,输入管理和键绑定以及标记的文本属性之外,还绘制了由后端组件管理的文本并处理用户事件以选择和修改其文本。 NSTextView是获得满足几乎所有在用户界...

macOS SwiftUI 教程之 实现点击获取具体位置并监测单机双击(教程含源码)【代码】【图】

实战需求 macOS SwiftUI 教程之 实现点击获取具体位置并监测单机双击 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能点击位置 监测单机、双击 NSClickGestureRecognizer基础知识 NSClickGestureRecognizer 离散手势识别器,可跟踪指定数量的鼠标单击。 class NSClickGestureRecognizer : NSGestureRecognizer总览 配置此手势识别器时,可以指定在调用action方法之前必须单击哪些鼠标按钮以及必须发生多...

macOS SwiftUI 教程之 TabView构建切换组件 (教程含源码)【代码】【图】

实战需求 macOS SwiftUI 教程之 TabView构建切换组件 本文价值与收获 看完本文后,您将能够作出下面的界面基础知识 TabView 基础 使用交互式用户界面元素在多个子视图之间切换的视图。 struct TabView<SelectionValue, Content> where SelectionValue : Hashable, Content : View选项卡视图仅支持Text,Image或Image后跟Text的选项卡项。 传递任何其他类型的视图都将导致可见但为空的标签项。 TabView风格DefaultTabViewStyle 默认...

macOS SwiftUI教程之绘制环形图RingView(教程含源码)【代码】【图】

实战需求 macOS SwiftUI教程之绘制环形图RingView 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能.fill(Color(.darkGray))填充整个圆的背景 .stroke(Color(.red), style: StrokeStyle(lineWidth: 12, lineCap: .round, lineJoin: .round)) 通过边框实行百分比效果 设置高度.frame(width: 10, height: CGFloat(value)) .rotationEffect(.degrees(180)) 旋转 .rotation3DEffect(.degrees(180), axis: (x:...

macOS SwiftUI教程之从饼图中显示百分比(教程含源码)【代码】【图】

实战需求 macOS SwiftUI教程之从饼图中显示百分比 本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能addArc move addLine .offset(x: 20, y: 20) .overlay( Text(“25%”)基础知识 addArc 向路径添加圆弧,并指定半径和角度。 mutating func addArc(center: CGPoint, radius: CGFloat, startAngle: Angle, endAngle: Angle, clockwise: Bool, transform: CGAffineTransform = .identity)实战代码 import S...

macOS SwiftUI教程之绘制曲线(教程含源码)【代码】【图】

实战需求 macOS SwiftUI教程之绘制曲线 Path提供了几种内置的API,可帮助您绘制不同的形状。您不仅限于绘制直线。的addQuadCurve,addCurve和addArc允许你创建曲线和圆弧。假设您要在一个矩形顶部绘制一个圆顶,如下所示。本文价值与收获 看完本文后,您将能够作出下面的界面看完本文您将掌握的技能addQuadCurve move addLine实战代码 import SwiftUIstruct ContentView: View {var body: some View {VStack{Path() { path inpath....

既然Swift是开源的,我可以在不是Mac的计算机上编写和编译iOS应用程序吗?

在过去,只能在Mac上编译iOS应用程序.不过,Apple最近开源Swift. 可以在swift.org上下载Linux编译器. 我想知道的是,这是否允许我为iOS编写程序并在没有Mac的应用程序商店中发布它们?解决方法:Swift语言在Linux等其他平台上可用,并且能够创建OS X或iOS应用程序. OS X和iOS需要许多特定的框架,这些框架永远不会成为基本开源语言的一部分. 开源Swift将允许您使用Swift语言编写通用程序. iOS和OS X应用程序的创建仍然需要更大的基础架构...