我正在创建一个应该返回错误的库,所以我想知道哪个应该用于我的目的.
更新: 我应该澄清,返回的结果将来自异步调用,所以我需要通知用户是否有错误,我想知道哪种类型我应该使用Error或NSError.
我正在尝试使用可在Interface Builder中找到的UITapGestureRecognizer对象.我将一个"UITapGestureRecognizer"从对象库拖到单个视图xib.然后我从这个轻敲手势创建一个IBAction方法,进行一个简单的测试,一旦点击视图,我只是打印一个"NSLog"消息到控制台.我已经运行了这个,并且没有调用tap方法.我右键单击IB中的视图,我注意到有一个警告"!" 在视图的"Outlook集合"中我看到:
Outlet Collections
gestureRecognizers - Tap Gesture Recognizer (!)
Run Code Online (Sandbox Code Playgroud)
警告说明: UIView does not have an outlet collection named gestureRecognizers.
我需要做些什么来解决这个问题?
objective-c interface-builder iboutlet uigesturerecognizer ios
我无法进行 pod 安装。这是错误。我要你帮我。
xcrun: error: SDK "iphoneos" cannot be located
xcrun: error: SDK "iphoneos" cannot be located
xcrun: error: SDK "iphoneos" cannot be located
xcrun: error: unable to lookup item 'Path' in SDK 'iphoneos'
/Users/dan/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6/missing: Unknown `--is-lightweight' option
Try `/Users/dan/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
configure: error: in `/Users/dan/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6':
configure: error: C compiler cannot create executables
See `config.log' for more details
Run Code Online (Sandbox Code Playgroud) 我有一个网络应用程序,我想制作一个iOS应用程序,我不想使用HTTP请求,我的网站有自己的数据库(这是一个MySQL数据库).我google了很多,但我找不到适合我的解决方案.你们之前有人这样做过吗?
对于没有默认情况的Double类型,swift开关可以是穷举吗?
此开关(没有默认情况)给出错误:开关必须是详尽的:
var minY = 1.0
switch minY {
case -(Double.infinity)..<0.9:
yAxisMinimum = 0.0
case (0.9..<0.99):
yAxisMinimum = 0.9
case (0.99..<0.999):
yAxisMinimum = 0.99
case (0.999..<0.9999):
yAxisMinimum = 0.999
case (0.9999...Double.infinity):
yAxisMinimum = 0.9999
}
Run Code Online (Sandbox Code Playgroud)
但是这个带有(无用的)默认情况的开关可以工作:
var minY = 1.0
switch minY {
case -(Double.infinity)..<0.9:
yAxisMinimum = 0.0
case (0.9..<0.99):
yAxisMinimum = 0.9
case (0.99..<0.999):
yAxisMinimum = 0.99
case (0.999..<0.9999):
yAxisMinimum = 0.999
case (0.9999...Double.infinity):
yAxisMinimum = 0.9999
default:
yAxisMinimum = 0.0
}
Run Code Online (Sandbox Code Playgroud)
我尽量避免使用我的开关的默认情况,但不知道是否可以使用Double.
在Apple的SwiftUI教程“组成复杂的接口”中,教程使用了反斜杠,该反斜杠似乎不是字符串插值或转义符。这是一行:
ForEach(categories.keys.sorted().identified(by: \.self))
Run Code Online (Sandbox Code Playgroud)
反斜杠的目的是什么?
下面是包含它的整个Struct。
struct CategoryHome: View {
var categories: [String: [Landmark]] {
.init(
grouping: landmarkData,
by: { $0.category.rawValue }
)
}
var body: some View {
NavigationView {
List {
ForEach(categories.keys.sorted().identified(by: \.self)) { key in
Text(key)
}
}
.navigationBarTitle(Text("Featured"))
}
}
}
Run Code Online (Sandbox Code Playgroud) 我可以在我的游戏中为我的项目选择一个随机数,但是可以在2个数字之间选择一个随机数吗?
而不是
let number = (arc4random_uniform(100))
Run Code Online (Sandbox Code Playgroud)
我想要这样的东西:
let number = (arc4random_uniform(10...20))
Run Code Online (Sandbox Code Playgroud)
或类似的东西?现在,如果我得到武器掉落,它可以是我列表中的所有内容.通过这种方式,我可以做到这一点,只有前几个对于一个特定的怪物会有一个下降,或者在更高的等级,他们会丢弃更好的武器而不是低等级.
我在名为“ MyFramework”的框架中有一个结构
public struct ShipmentPackage:Encodable {
let package_code:String
let weight:Float
}
Run Code Online (Sandbox Code Playgroud)
然后,当我尝试在另一个项目/框架中创建ShipmentPackage时
import MyFramework
let onePackage = ShipmentPackage(package_code:"BX",weight:100)
Run Code Online (Sandbox Code Playgroud)
我收到一条错误消息,由于“内部”保护级别,无法访问“ ShipmentPackage”初始化程序。我进入此链接https://forums.swift.org/t/public-struct-init-is-un-expectedly-internal/5028
我试图将代码更改为以下内容:
第一次尝试:
public struct ShipmentPackage:Encodable {
let package_code:String
let weight:Float
public init(package_code:String,weight:Float){
self.package_code = package_code
self.weight = weight
}
}
Run Code Online (Sandbox Code Playgroud)
第二次尝试:
public struct ShipmentPackage:Encodable {
public let package_code:String
public let weight:Float
public init(package_code:String,weight:Float){
self.package_code = package_code
self.weight = weight
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试将package_code和weight更改为public,但是以上都不起作用,编译时出现错误消息
<unknown>:0: error: 'init' is inaccessible due to 'internal' protection level
<unknown>:0: note: 'init' declared here
<unknown>:0: error: …
Run Code Online (Sandbox Code Playgroud) 我试图让用户选择保存他们的当前位置。我使用默认值来保存它,我发现了如何获取用户位置。但我不确定如何将这两项任务结合起来。所以这是我的问题:
如何让我的函数调用用户位置,以便保存?
@IBAction func addLocation(_ sender: Any) {
// CALL LOCATION MANAGER TO GET LOCATION IN LAT AND LONG
self.saveDefaults()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
guard let locValue: CLLocationCoordinate2D = manager.location?.coordinate else { return }
print("locations = \(locValue.latitude) \(locValue.longitude)")
}
func saveDefaults()
{
UserDefaults.standard.set(self.pickers, forKey: "pickers")
print("SAVED PICKERS: \(pickers)")
}
Run Code Online (Sandbox Code Playgroud)
这是我最近的尝试,但我不知道为什么我的 struct (lat: ,long:) 没有接受输入
@IBAction func addLocation(_ sender: Any) {
var locations: [CLLocation]
let manager: CLLocationManager
let userLocation:CLLocation = locations[0] as CLLocation
// Call stopUpdatingLocation() …
Run Code Online (Sandbox Code Playgroud) 我试图让我的按钮在 swift 4.2 中渲染阴影
我已经按照其他示例无济于事。我错过了什么?
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var btnHi: UIButton! // Standard button tweeked in view controller
@IBOutlet weak var btnNext: NextButton! // My custom button via class
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
btnHi.layer.cornerRadius = btnHi.frame.height / 2
btnHi.layer.borderWidth = 3.0
btnHi.layer.borderColor = UIColor.darkGray.cgColor
btnHi.layer.shadowColor = UIColor.black.cgColor
btnHi.layer.shadowOffset = CGSize(width: 0.0, height: 6.0)
btnHi.layer.shadowRadius = 8
btnHi.layer.opacity = 0.5
// btnHi.clipsToBounds …
Run Code Online (Sandbox Code Playgroud)