我试图从Facebook页面检索图像.我检索了页面ID,现在我需要使用此ID从页面获取图像.我使用以下代码:
let pictureRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: picPath, parameters: ["fields" : "data"], HTTPMethod: "GET")
pictureRequest.startWithCompletionHandler({ (connection: FBSDKGraphRequestConnection!, result, error) -> Void in
if (error != nil) {
print("picResult: \(result)")
} else {
print(error!)
}
})
Run Code Online (Sandbox Code Playgroud)
我没有收到错误,但我的结果是null.picpath看起来像这样:
/110475388978628/picture
Run Code Online (Sandbox Code Playgroud)
我直接从这里复制了代码,但它无法正常工作.我知道我做错了什么?我有访问令牌,因为我能够通过图形请求获取页面ID
我有一个位于UIImageView顶部的UILabel.文本可以是各种长度,因此我必须使标签尽可能大(与imageView相同的框架).问题是,我不希望标签上的文本直接位于图像的中心来覆盖图像.在UILabel中设置左对齐很容易.任何线索如何设置垂直对齐?基本上我希望文本拥抱左下角,无论它的长度是多少而不被切断.
我正在浏览Swift标准库,并且遇到了用于比较序列的elementsEqual方法。
我没有真正看到此函数的值,因为只有在顺序完全相同时它才会返回true。我认为如果可以告诉我两个序列是否包含相同的元素,它们恰好处于不同的顺序,那将有一定用处,因为这可以避免我自己对两个元素进行排序的麻烦。
这使我想到了一个问题:
比较两个序列时,使用elementsEqual和'=='有什么区别吗?一个人与另一个人有优点和缺点吗?
我在操场上,并做了以下测试:
let values = [1,2,3,4,5,6,7,8,9,10]
let otherValues = [1,2,3,4,5,6,7,8,9,10]
values == otherValues
values.elementsEqual(otherValues)
这两项检查均得出true,因此在这里我无法辨别出差异。
我试图用左右边距/插图制作UITableViewCell.我以前用Objective-C使用以下代码制作了这个:
- (void)setFrame:(CGRect)frame {
frame.origin.x += 25;
frame.size.width -= 2 * 25;
[super setFrame:frame];
}
Run Code Online (Sandbox Code Playgroud)
此代码不会直接转换为Swift,因为现在我必须覆盖公共框架变量,但将此代码放在该变量的setter中无效.如何在Swift中使用此方法或类似技术获得边距?
这是我尝试过的Swift:
private var otherFrame: CGRect = CGRectZero
override public var frame: CGRect {
get {
return otherFrame
}
set {
otherFrame = frame
otherFrame.origin.x += 25
otherFrame.size.width -= 2 * 25
}
}
Run Code Online (Sandbox Code Playgroud) 这是我得到的一个非常奇怪的错误。是这样的:
'NSRangeException', reason: '*** -[NSArray subarrayWithRange:]: range {2, 3} extends beyond bounds [0 .. 3]'
Run Code Online (Sandbox Code Playgroud)
我不明白的是,范围 (2,3) 显然不会超出范围 (0,3)
事实上,它在这些范围内,因为我像这样设置了数组和范围:
NSRange range = NSMakeRange([wordArray indexOfObject:letterInWordArray]+1,wordArray.count-1);
NSMutableArray* sortedSubArray = [[NSMutableArray alloc] initWithArray:[wordArray subarrayWithRange:range]];
Run Code Online (Sandbox Code Playgroud)
本质上,我正在遍历一个名为 wordArray 的数组,并且我想创建一个包含我尚未遍历的所有项目的子数组。有人可以帮我从这里出去吗?
我试图让用户位置实时绘制在地图上.我使用以下方法.
[self.locationManager requestLocation];
Run Code Online (Sandbox Code Playgroud)
但是,在locationManager didUpdateLocations中出现的回调大约需要10秒才能返回.这仅仅是操作系统的限制,还是有更快的方式来获取当前用户位置的回调?如果这是一个限制我无法绕过,我的位置过去总是10秒?如果用户骑自行车,他们的位置是否会落后几英尺?