我正在尝试建立登录视图时正在探索SwiftUI,现在我遇到了问题
这是我要实现的目标:
如您所见,我已经达到了这一点,但是我不喜欢我的实现
struct ContentView : View {
@State var username: String = ""
var body: some View {
VStack(alignment: .leading) {
Text("Login")
.font(.title)
.multilineTextAlignment(.center)
.lineLimit(nil)
Text("Please")
.font(.subheadline)
HStack {
VStack (alignment: .leading, spacing: 20) {
Text("Username: ")
Text("Password: ")
}
VStack {
TextField($username, placeholder: Text("type something here..."))
.textFieldStyle(.roundedBorder)
TextField($username, placeholder: Text("type something here..."))
.textFieldStyle(.roundedBorder)
}
}
}.padding()
}
}
Run Code Online (Sandbox Code Playgroud)
因为为了使在文本框的中间正好对准用户名和密码的文本,我不得不把字面间距值20的VStack,我不喜欢,因为最有可能它不会在不同的设备尺寸的工作。
有人看到一种更好的方法来达到相同的结果吗?
谢谢
我想知道是否可以根据 superview进行调整height并按width比例调整SwiftUI到任何UIControl?
正如我们正在做的那样:
let txtFld = UITextField()
txtFld.frame = CGRect(origin: CGPoint(x: 0, y: 0), size: CGSize(width: self.view.frame.width/2, height: self.view.frame.height*0.1))
Run Code Online (Sandbox Code Playgroud)
我知道我们可以通过使用Spacer(), .padding和以某种方式实现调整宽度edgeInsets。但是呢height?我看过很多教程SwiftUI,到处height都是静态的。甚至在苹果的网站上。SwiftUI 教程
如果有人知道如何设置与视图高度成比例的高度,请在此处分享。因为在某些时候我们需要这样。例如。如果需要根据设备高度制作按钮。(假设 iPhone SE = 40、iPhone 8P = 55、iPhone X = 65)
我正在尝试((x == a && y == b) || (x == b && y == a))在Swift中进行评估,但似乎有些冗长。有没有更优雅的方式?
我知道classand的基本概念,struct但是为 API 创建模型以获取数据并告诉我优缺点更有效。
以前我不使用可选的模型。相反,我给了它一些价值。IE
class CompanyInfo : Codable {
var NameEn : String = ""
var CityEn : String = ""
var Website : String = ""
var Email : String = ""
var Phone : String = ""
var Fax : String = ""
}
Run Code Online (Sandbox Code Playgroud)
但是当它null从 API获得一些价值时。即"Fax": null然后应用程序崩溃,因为它无法使用以下行解析数据
let data = try JSONDecoder().decode(dataModel.self, from: dataSet)
Run Code Online (Sandbox Code Playgroud)
定义模型的最佳方法是什么,这样我就不需要解开可选项或给它默认值。
为每个项目自定义标题注释。
\n\n我创建了一个plist名为IDETemplateMacros.plist,它是所有项目的自定义标题注释,但我需要特定项目的自定义标题,而不是所有项目,并将自定义文本宏恢复为默认值。
//\n// CategoryViewController.swift\n// ToDoey\n//\n// Created by Swetha on 28/01/19.\n// Copyright \xc2\xa9 2019 Swetha. All rights reserved.\n//\nRun Code Online (Sandbox Code Playgroud)\n\n到
\n\n//Hey..CategoryViewController.swift\nRun Code Online (Sandbox Code Playgroud)\n\n我删除了 IDETemplateMacros.plist,但它不会将文本宏恢复为默认值。
\n\n我期望默认的文本宏。
\n有没有办法从 mkmapview 的底部操纵、移动苹果徽标和“合法”文本?
谷歌地图有什么。


我想制作一个简单的表单并更改文本字段的背景颜色,但 Xcode 为我提供了.background(background: View)等选项,但没有.background(Color())。
这是在条件语句中做的一种可能的方法吗
if let offer = self.offer_visitor_["Offer"], let video = self.offer_visitor_["VideoReward"], let bday = self.offer_visitor_["BirthdayReward"],let Promotional = self.offer_visitor_["promotional"]{
if !offer.isEmpty && !video.isEmpty && !bday.isEmpty && !Promotional.isEmpty{
return 4
}else if !offer.isEmpty && !bday.isEmpty && !video.isEmpty {
return 3
}else if !offer.isEmpty && !video.isEmpty && !Promotional.isEmpty {
return 3
}else if !offer.isEmpty && !bday.isEmpty && !Promotional.isEmpty {
return 3
}else if !video.isEmpty && !bday.isEmpty && !Promotional.isEmpty {
return 3
}else if !offer.isEmpty && !video.isEmpty {
return 2
}else if !offer.isEmpty && !bday.isEmpty …Run Code Online (Sandbox Code Playgroud)