현재 Swift 2에서 RSS 피드 리더를 만들고 있으며 내 테이블 뷰에서 내 웹 뷰로 URL을 전달하는 데 어려움을 겪고 있습니다. tableviewcontroller에서 내 URL을 인쇄하면 URL 앞에 (선택 사항)이 추가됩니다. 그러나 내 webviewcontroller로 전달되면 앞에 (선택 사항) inf가 없습니다. 이로 인해 도중에 문제가 발생했다는 사실이 걱정됩니다.
webviewcontroller에 URL을 전달하는 tableviewcontroller :
override func tableView(tableView: UITableView,
didSelectRowAtIndexPath indexPath: NSIndexPath){
let webVC = WebViewController()
webVC.entryUrl = entriesArray[indexPath.row]["link"]
self.navigationController?.pushViewController(webVC, animated: true)
print(entriesArray[indexPath.row]["link"])
}
webviewcontroller가 데이터를 수신하고 사용하려고합니다.
var entryUrl:String!
override func viewDidLoad() {
super.viewDidLoad()
print(entryUrl)
if entryUrl != nil {
print(entryUrl)
let requesturl: NSURL? = NSURL(string: entryUrl)
let request = NSURLRequest(URL: requesturl!)
web.loadRequest(request)
}
loadAddressURL()
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
func loadAddressURL() {
if let requestURL = NSURL(string: entryUrl) {
let request = NSURLRequest(URL: requestURL)
web?.loadRequest(request)
}
}
줄에 오류가 있습니다.
loadAddressURL()
속담:
EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) on dispatch_semaphore_dispose
tableviewcontroller에서 로그는 다음과 같이 인쇄됩니다. Optional ( " http://www.google.com/ ")
그러나 webviewcontroller에서 로그는 다음과 같이 인쇄됩니다. http://www.google.com/
그 후 : 치명적 오류 : Optional 값을 언 래핑하는 동안 예기치 않게 nil이 발견되었습니다.
왜 이것이 작동하지 않으며 웹뷰 컨트롤러에서 URL이 더 이상 선택 사항이 아닌 이유는 무엇입니까?
View Controller의 객체를 선언하는 코드 줄을 아래와 같이 변경합니다.
override func tableView(tableView: UITableView,
didSelectRowAtIndexPath indexPath: NSIndexPath){
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let webVC = mainStoryboard.instantiateViewControllerWithIdentifier("WebViewController") as! WebViewController
webVC.entryUrl = entriesArray[indexPath.row]["link"]
self.navigationController?.pushViewController(webVC, animated: true)
print(entriesArray[indexPath.row]["link"])
}
storyBoard에 viewController의 식별자를 추가하는 것을 잊지 마십시오.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다