내가 어디 있는지 .document에서 URL을 가져 오기 위해 아래 코드를 사용해 QuickLook이 프레임 워크테이블보기 오류 치명적인 오류 : 인덱스 파일
을 준비하는 내있는 tableview에 URL 경로를로드하기 위해 노력하고있어를로드 할 때 범위를 벗어난 빈 그것은 첫째
var fileURLs = [NSURL]()
을 만들 때 다음
private func prepareFileURLS() {
let csvFile = (FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)).last! as URL
if FileManager.default.fileExists(atPath: csvFile.path) {
fileURLs.append(csvFile as NSURL)
print(fileURLs)
}
}
다음 이름
에게 레이블을 제공하기 위해 아래의 코드를 사용하여 6,
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let objectIdentifier = "ObjectsTableViewCell"
guard let cell = tableView.dequeueReusableCell(withIdentifier: objectIdentifier, for: indexPath) as? ObjectsTableViewCell else {
fatalError("The dequeued cell is not an instance of ObjectsTableViewCell")
}
//quickview
// Fetches the appropriate object for the data source layout
let currentFileParts = extractAndBreakFilenameInComponents(fileURL: fileURLs[indexPath.row])
cell.nameLabel.text = currentFileParts.fileName
//cell.photoImageView.image = cur.photo
//quickview
cell.descriptionLabel.text = getFileTypeFromFileExtension(fileExtension: currentFileParts.fileExtension)
return cell
}
하고 오류를
private func extractAndBreakFilenameInComponents(fileURL: NSURL) -> (fileName: String, fileExtension: String) {
// Break the NSURL path into its components and create a new array with those components.
let fileURLParts = fileURL.path!.components(separatedBy: "/")
// Get the file name from the last position of the array above.
let fileName = fileURLParts.last
// Break the file name into its components based on the period symbol (".").
let filenameParts = fileName?.components(separatedBy: ".")
// Return a tuple.
return (filenameParts![0], filenameParts![1]) --> Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
}
치명적인 오류가 발생 문자열로 경로 분해 아래의 방법을 사용하여 : 내가 잘못 했습니까 어떤 범위 에서 인덱스를?
섹션의 행 수를 확인하십시오. 귀하의 url에 존재하는 데이터보다 위의 행을 설정하려고 시도하는 중일 수 있습니다. – Amit
@Amit이 당신이 언급 한 것입니까? FUNC에있는 tableView (_있는 tableView : jQuery과, numberOfRowsInSection 섹션 : INT) -> Int 인 { 반환 fileURLs.count } – JameS
예,이 방법은 ... cellforRowAt_indexpath에 중단 점을 배치 다시 코드를 실행합니다. 그리고 코드가 충돌하는 반복을 확인하십시오. – Amit