한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터를 전달할 때 오류 발생

만 라르손

현재 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] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

다음 뷰 컨트롤러를 호출 할 때 오류 발생

Firebase를 사용하여 한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 이미지 전달

다른 뷰 컨트롤러에서 이탈 할 때 한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터를 어떻게 저장 (추가) 하시겠습니까?

첫 번째 vc가 표시되기 전에 한 뷰 컨트롤러에서 다음 뷰 컨트롤러로의 전환이 발생할 수 없습니까?

테이블 뷰에서 뷰 컨트롤러로 분리하려고 할 때 다음 오류가 발생합니다. Unexpectedly found nil while unwrapping

한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터를 전달하는 방법과 뷰 컨트롤러 사이에는 표시 뷰 컨트롤러가 있습니다.

뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터를 전달하는 방법

선택한 데이터를 뷰에서 컨트롤러로 전달하고 다시 컨트롤러에서 뷰로 다시 전달하는 방법

한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터를 전달하는 방법은 무엇입니까?

CI의 뷰에서 컨트롤러로 데이터를 전달하는 동안 오류가 발생했습니다.

컨트롤러에서 뷰를로드 할 때 발생하는 codeigniter 문제

한 뷰 컨트롤러의 테이블 뷰 셀에서 다른 뷰 컨트롤러로 정보를 어떻게 전달합니까?

스위프트 시계. 한 뷰 컨트롤러에서 다른 뷰 컨트롤러로 데이터 보내기

segue를 준비 할 때 다른 뷰 컨트롤러로 데이터를 전달할 수 없습니다.

Laravel 5.5-양식의 데이터를 컨트롤러에 전달한 다음 컨트롤러에서 동일한 뷰로 데이터 전달

뷰에서 컨트롤러로 데이터 전달, 데이터는 다른 컨트롤러에서 가져옴

뷰에서 컨트롤러로 데이터를 전달할 수 없습니다.

뷰 컨트롤러에서 내비게이션 컨트롤러로 데이터를 전달한 다음 다른 뷰 컨트롤러로 전달하는 방법은 무엇입니까?

다른 뷰 컨트롤러로 이동할 때 팝업 표시

다른 뷰 컨트롤러로 이동할 때 TabBar 유지

컨트롤러가 모달로 표시 될 때 다른 뷰 컨트롤러에 데이터를 전달합니까?

테이블 뷰에서 다른 뷰 컨트롤러로 다른 데이터를 전달하는 방법

한 뷰 컨트롤러에서 다른 뷰 컨트롤러의 UIImageView로 사진을 전송하는 방법

데이터를 이전 뷰 컨트롤러로 다시 전달

iOS-다른 뷰 컨트롤러로 데이터 전달

테이블 뷰 셀을 선택한 후 데이터를 이전 뷰 컨트롤러로 다시 전달

Laravel은 컨트롤러에서 뷰로 db 데이터를 전달합니다.

다른 뷰 컨트롤러를 인스턴스화 할 때 데이터를 전달하는 방법

뷰에서 컨트롤러로 데이터를 전송 한 다음 다른 뷰 (MVC C #)로 데이터를 전송하는 방법은 무엇입니까?