2013-07-06 3 views
1

여기 내 문제가 있습니다. 나는 데이터가 '두 번째보기 컨트롤러'로 전달되는 mySQL 현재 큰 작품입니다. 그러나 셀 (UITableView) 중 하나를 선택하면 현재 데이터를 표시 할 수있는 새보기를 열 수 없습니다.detailviewcontroller 스토리 보드 문제에 대한 테이블 뷰

나는 코드 문제가

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
detailedViewController *productinfo = [self.storyboard instantiateViewControllerWithIdentifier:@"productDetails"]; 

//Retrieve current user array 
foodProducts *currentProduct = [bakeryProductArray objectAtIndex:indexPath.row]; 
productinfo.productName = currentProduct.productName; 
productinfo.productImage = currentProduct.productImgUrl; 
productinfo.productDescription = currentProduct.productDescription; 

[self.navigationController pushViewController:productinfo animated:YES]; 

} 

와 믿습니다 이상이 사용하는 펜촉을 들어 왔지만 스토리 보드하지 않은 다른 사람이 있었다.

누군가 내가 잘못했거나 근본적으로 놓친 부분을 지적 할 수 있습니까?

(나는 완전히 내비게이션 컨트롤러와 만 작업하는 또 다른 프로젝트가있다.하지만이 프로젝트는 탭 바 탐색에 사용하려고 시도한 첫 번째 프로젝트이지만).

+0

당신은'있는 tableView가 있는지 확인 할 수 있나요? 그렇지 않으면 테이블 뷰의 대리자 속성을 설정했는지 확인하십시오. – Alladinian

+0

'tableView : didSelectRowAtIndexPath :'가 호출되는지 확인할 수 있습니다. NSLog 문을 사용하여 콘솔에 다시 보냈습니다. 는 detailedViewController에 대해 선언되었습니다. – Evilelement

답변

0

스토리 보드에서이 문제를 처리하는 가장 좋은 방법은 mainViewController의 세부보기에 대한 세그를 만드는 것입니다. 실제 셀이나 컨트롤러에서 가져올 수 있습니다. segue 준비 메소드에서 오브젝트를 세부 사항보기로 전달하십시오. 이것은 fetchedResultsController를 사용하지만 아이디어는 같습니다. 선택한 셀을 가져 와서 객체를 상세 뷰로 전달합니다.

다음은 셀 자체의 세구 (segue)를 사용하는 동안 전달할 수있는 샘플입니다. "selection"을 위해 IB의 tableViewCell에서 segue를 만듭니다. 해당 segue를 detailViewController로 드래그하고 식별자를 ShowDetailView로 설정 한 후 다음 prepareForSegue 메소드를 추가하십시오.

선택한 개체에 대한 참조를 보유 할 detailViewController에 속성 (foodProduct)이 있어야합니다. 이것이 mainViewController에서 전달할 것입니다. didSelectRowAtIndexPath :`호출되는

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if ([[segue identifier] isEqualToString:@"ShowDetailView"]) 
    { 
     DetailViewController *detailViewController = [segue destinationViewController]; 
     foodProducts *currentProduct = [bakeryProductArray objectAtIndex:[self.tableView indexPathForSelectedRow]]; 
     detailViewController.foodProduct = currentProduct; 
    } 
} 
+0

이것을 확장 할 수 있습니까? (이 물건 중 일부는 여전히 멍청한 놈입니다.) – Evilelement

+0

그 외 모든 것을 이해하고 있습니까? TheObject * theObject = (Object *) [_ fetchedResultsController objectAtIndexPath : 부끄러움 내 문제의 이미지를 게시 할 수 없습니다. ( – Evilelement

+0

정확한 사례에 대한 예제를 업데이트했습니다. –

0
try this ..... 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    Decriptionview *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"Decription"];//@"Decription" is Storybord Id of UiViewController of Decriptionview 
    detail.wndecDecription=[SortedDecription1 objectAtIndex:indexPath.row]; 
    detail.wndectitle=[SorttedTitle1 objectAtIndex:indexPath.row]; 
    detail.wndeclink=[SortedLink1 objectAtIndex:indexPath.row]; 
    detail.wndecdate=[SorttedDate1 objectAtIndex:indexPath.row]; 
    detail.imgeurl=[sorttedMainImage1 objectAtIndex:indexPath.row]; 
    [self.navigationController pushViewController:detail animated:YES]; 

} 
관련 문제