【发布时间】:2015-11-08 15:21:55
【问题描述】:
我有一个 tableView,它显示从 XML 文件解析的交通摄像头列表。当我选择一个单元格时,它会通过 prepareForSegue 方法发送 ImageURL、Roadname、坐标等。
在我的 detailviewcontroller 中,我将传入的值声明如下:
var selectedFeedURL = String()
var selectedFeedRoadname = String()
var selectedFeedLongitude = String()
var selectedFeedLatitude = String()
我可以将所有值打印到日志中或将其设置为标签。当我尝试加载 selectedFeedURL(这是图像的 URL,即:http://webkamera.vegvesen.no/kamera?id=559847)并将其设置为我的 imageView 时,会出现问题。
在我的 viewDidLoad 中,我有以下代码,它应该下载图像并将其设置为名为 cameraImageView 的 imageView。
if let url = NSURL(string:"\(selectedFeedURL)") {
if let data = NSData(contentsOfURL: url){
print("Suksess")
cameraImageView.image = UIImage(data: data)
}
}
我的 imageView 保持为空,并且在调试区域中我没有收到任何错误或抱怨。如果我打印出 selectedFeedURL,链接就在那里。
奇怪的是,如果我改变了
NSURL(string:"\(selectedFeedURL)")
到
NSURL(string:"http://webkamera.vegvesen.no/kamera?id=559847")
基本上将变量更改为相机 URL,它可以完美运行。
Soo...对可能出现的问题有什么建议吗?
非常感谢:)
【问题讨论】:
-
这不是你的问题,但没有必要对
String进行字符串插值。NSURL(string: selectedFeedURL)应该足够了。 -
打印 selectedFeedURL 的值。里面会不会有不可打印的字符?
-
即使您的 URL 字符串之前或之后的空格也可能会破坏这一点。执行
print("***\(selectedFeedURL)***")并查看变量中的 URL 前后是否有空格。 -
@vacawama 好的,这是直接从调试区域复制出来的:***webkamera.vegvesen.no/kamera?id=113094 *** 它创建了一个换行符和很多空格,很奇怪。 Mkay,换行符没有出现在评论部分,也没有所有的空格。 (一共5个空格)
-
试试我的答案。它修剪空白并添加所需的
"http://"。
标签: swift uitableview uiimageview segue detailview