Di seguito è disponibile un codice che elenca i file dalla directory dei miei documenti in un UITableView
. Tuttavia, il codice non funziona correttamente e, una volta eseguito il test sul dispositivo, anche se nella directory dei documenti sono presenti file, non viene elencato nulla, tutti visualizzati solo visualizzando alcune celle vuote. Ecco il codice Attualmente sto usando:Objective-C: come elencare i file dalla directory dei documenti in un UITableView?
NSArray *filePathsArray;
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [filePathsArray count];
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MainCell"];
if (cell == nil) {
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"MainCell"];
}
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
filePathsArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:documentsDirectory error:nil];
cell.textLabel.text = [documentsDirectory stringByAppendingPathComponent:[filePathsArray objectAtIndex:indexPath.row]];
return cell;
}
Perché dovrebbe 'numberOfRowsInSection:' restituisce '1' quando non ci sono file? – rmaddy
@maddy: in quella riga è possibile visualizzare un messaggio del tipo: "Nessun record trovato" o qualsiasi messaggio appropriato in modo che l'utente non venga confuso. –
@maddy: assicurati di impostare userInteractionEnabled su No per quella cella –