如何n从IntSwift中的数组中删除第一个元素?
例如:
var array = [0, 1, 2, 3, 4, 5, 6]
let n = 4
Run Code Online (Sandbox Code Playgroud)
结果数组包含以下元素:
[4, 5, 6]
Run Code Online (Sandbox Code Playgroud) 我们使用AFNetworking 2.0的应用程序遇到了以下问题.当使用AFHTTPRequestOperationManager's GET方法时,我们遇到了错误NSURLErrorDomain code -1012.请求使用HTTPS,服务器不需要用户身份验证.请求永远不会到达服务器.
我们已经运行了几个测试,这是第一次产生错误,我们想知道如何产生这个错误,因为它似乎不相关.
AFHTTPRequestOperationManager的设置:
httpOperationManager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:
[NSURL URLWithString: HTTPS_URL)]];
httpOperationManager.responseSerializer =
[AFXMLParserResponseSerializer serializer];
[[AFNetworkActivityIndicatorManager sharedManager] setEnabled: YES];
Run Code Online (Sandbox Code Playgroud)
获得请求
AFHTTPRequestOperation *op =[httpOperationManager GET:
[NSString stringWithFormat:SOME_PATH]
parameters:nil
success:^(AFHTTPRequestOperation *operation, id responseObject) {
//code to setup NSXMLParser ...
}
failure: ^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error %@", [error localizedDescription]);
}];
Run Code Online (Sandbox Code Playgroud) 我想为UITableViewCells使用自动布局.这些表格单元格具有动态高度(取决于文本长度).
我正在使用[UIView -systemLayoutSizeFittingSize:]计算适当的单元格高度(返回[UITableView -heightForRowAtIndexPath:]),但我一直得到以下结果:
如果我通过UILayoutFittingCompressedSize,我会收到(0,0)的CGSize.
如果我通过UILayoutFittingExpandedSize,我的应用程序崩溃与此错误:
***断言失败 - [NSISLinearExpression incrementConstant:],/ SourceCache /Foundation_Sim/Foundation1043.1/Lightsout.subproj/IncrementalSimplex/NSISLinearExpression.m:620
(我的猜测是,这意味着一些数字是无限的.)
我的实现很简单.我计算每个对象的高度,然后缓存它:
MessageCell *cell = // allocate a new cell...
// set up the cell (assign text, images, etc)
CGSize size = [cell systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
self.cellHeight = size.height; // size always equals (0, 0)
Run Code Online (Sandbox Code Playgroud)
我假设这是我设置的约束的问题,但是:
cellHeight为较大的值,除了高度错误外,单元格看起来都很好.[cell hasAmbiguousLayout]回报NO.有任何想法吗?
我知道什么"?" 和"!" 当我在Swift中声明变量时.但是在使用这些变量时它们意味着什么?例如,在此代码中:
var attachment: NSTextAttachment = NSTextAttachment()
attachment.image = UIImage(named: "placeholder.png")
attachment.image!.size ... // or attachment.image?.size ...
Run Code Online (Sandbox Code Playgroud)
attachment.image!.size和之间有什么区别attachment.image?.size?
我正在查看Stripe的cURL示例以获取有关事件的信息.
他们让我这样做:
curl https://api.stripe.com/v1/events/evt_123 \
-u sk_test_somekey:
Run Code Online (Sandbox Code Playgroud)
cURL的文档声明-u执行USER:PASSWORD.
当我尝试将其作为-d或查询发送时,Stripe的API说我错过了一个标题.这似乎不对.
我也不明白用户名之后缺少密码.如果我发送没有":"的cURL,系统会提示我输入密码.点击输入(没有输入字符),得到预期的响应.
那么,究竟是什么-u这样做我可以在我的代码中模仿这个调用?
我正在使用a WKWebView来显示一个包含三个按钮的HTML网站.我想在单击特定按钮时在本机应用程序中运行一些Swift代码.
这三个按钮看起来像这样:
<input type="button" value="Edit Info" class="button" onclick="javascript:GotoURL(1)">
<input type="button" value="Start Over" class="button" onclick="javascript:GotoURL(2)">
<input type="button" value="Submit" class="button" onclick="javascript:GotoURL(3)">
Run Code Online (Sandbox Code Playgroud)
GotoURL他们调用的函数如下所示:
function GotoURL(site)
{
if (site == '1')
document.myWebForm.action = 'Controller?op=editinfo';
if (site == '2')
document.myWebForm.action = 'Controller?op=reset';
if (site == '3')
document.myWebForm.action = 'Controller?op=csrupdate';
document.myWebForm.submit();
}
Run Code Online (Sandbox Code Playgroud)
WKWebView实施当我单击webview中的任何按钮时,在我的上面调用此函数WKNavigationDelegate:
func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
// ...?
}
Run Code Online (Sandbox Code Playgroud)
但当然,它navigation是不透明的,因此不包含用户点击的三个按钮中的哪一个的信息.
我想在用户单击" 提交"时进行响应,并忽略其他按钮按下.
我在Stack Overflow上看到了其他一些方法WKUserContentController,但它们似乎要求网站调用类似的东西:
window.webkit.messageHandlers.log.postMessage("submit");
Run Code Online (Sandbox Code Playgroud)
我不控制这个网站所以我不能在它的源代码中添加这一行,我不知道使用它在正确的地方注入它的最佳方法 …
跟踪Swift相当于以下内容时遇到一些麻烦:
//timeArray and locationArray are NSMutableArrays
NSRange removalRange = NSMakeRange(0, i);
[timeArray removeObjectsInRange:removalRange];
[locationArray removeObjectsInRange:removalRange];
Run Code Online (Sandbox Code Playgroud)
我看到Swift确实在API中有一个调用: typealias NSRange = _NSRange但我没有超过那个部分.有帮助吗?
考虑两个班级.第一个是符合以下条件Vehicle的NSObject子类NSCopying:
class Vehicle : NSObject, NSCopying {
var wheels = 4
func copyWithZone(zone: NSZone) -> AnyObject {
let vehicle = self.dynamicType()
vehicle.wheels = self.wheels
return vehicle
}
}
Run Code Online (Sandbox Code Playgroud)
第二类Starship继承自Vehicle:
class Starship : Vehicle {
var photonTorpedos = 6
var antiGravity = true
override func copyWithZone(zone: NSZone) -> AnyObject {
let starship = super.copyWithZone(zone) as Starship
starship.photonTorpedos = self.photonTorpedos
starship.antiGravity = self.antiGravity
return starship
}
}
Run Code Online (Sandbox Code Playgroud)
此代码无法编译,因为:
构造具有元类型值的类型"Vehicle"的对象必须使用"必需的"初始化程序.
所以我继续添加一个必需的初始化程序:
required override …Run Code Online (Sandbox Code Playgroud) 我正在尝试将图像添加到我的UISegmentedControl中,但图像总是自动拉伸以填充整个控件(见图片).我目前正通过调用setImage:forSegmentAtIndex:来设置图像.如何设置图像以保持其纵横比?这似乎应该是一件容易的事,但我无法弄明白.

ios ×5
swift ×5
autolayout ×2
afnetworking ×1
arrays ×1
cocoa-touch ×1
curl ×1
javascript ×1
nib ×1
objective-c ×1
uitableview ×1
wkwebview ×1