2010-02-25 6 views
0

사용자가 테이블보기에서 책 제목을 클릭 할 때마다 레이블 텍스트를 해제하려고 시도하지만 detailViewController 레이블 (titleLabel)을 변경해야하지만 동일한 책 제목을 계속 표시해야합니다.iPhone 릴리스 레이블 텍스트

// 
// BookDetailViewController.m 

#import "BookDetailViewController.h" 
#import "Book.h" 

@implementation BookDetailViewController 

@synthesize aBook, titleLabel; 

// Implement viewDidLoad to do additional setup after loading the view. 
- (void)viewDidLoad { 
    [super viewDidLoad]; 
    [self bookDes]; 
    self.title = @"Book Detail"; 
} 

-(void)bookDes { 
    [self.titleLabel setText:nil]; 

    [self.titleLabel setText:aBook.title]; 
} 

- (void)dealloc { 
    [aBook release]; 
    [titleLabel release]; 
    [super dealloc]; 
} 
@end 
+0

당신이 컨트롤러를 생성하는 코드를 게시 할 수 있습니다? – deanWombourne

+0

언제 aBook 개체를 설정합니까? –

+0

코드는 http://www.iphonesdkarticles.com/2008/11/parsing-xml-files.html에서 제공됩니다. 그러나 TableView에 표시하지 않으려 고 detailView를 변경했습니다. – RussellHarrower

답변

0

당신은이 방법이 후라고 ...있는 viewDidLoad에서 [자기 bookDes]를 호출 ... 물론 나는 알고하지만 난 그것을 해결하는 방법을 궁금해 - 내가 뭔가 잘못 한 경우

궁금 뷰 컨트롤러는 관련 뷰를 메모리에로드했습니다. BookDetailViewController는 어떻게 작성하고 있습니까? 한 번만 생성 한 다음 사용자가 책 제목을 누를 때마다 컨트롤러를 재사용하면 viewDidLoad 메서드도 한 번 호출됩니다.

부모 컨트롤러에 책 제목이 이미있는 경우 하위 컨트롤러를 탐색 컨트롤러에 올려 놓을 때 속성을 설정하지 않는 이유는 무엇입니까? COMMENT FROM

bookDetailsController.titleLabel.text = selectedBook.title; 

편집 :

예, BookDetailsViewController 한 번, 다음 그래서 viewDidLoad에 한 번만라고 ... 저장 생성됩니다. 당신이 시도 할 수

것은 부모의 didSelectRowAtIndexPath 방법에 레이블을 설정할 수 있습니다 :

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    // Navigation logic -- create and push a new view controller 

    if(bdvController == nil) 
     bdvController = [[BookDetailViewController alloc] initWithNibName:@"BookDetailView" bundle:[NSBundle mainBundle]]; 

    Book *aBook = [appDelegate.books objectAtIndex:indexPath.row]; 

    bdvController.aBook = aBook; 
    bdvController.titleLabel.text = aBook.title; 


    [self.navigationController pushViewController:bdvController animated:YES]; 
} 

이 세부 사항 컨트롤러의 세터를 무시하고 레이블을 설정처럼이 작업을 수행하는 더 나은 방법이 있습니다 ...하지만 간단하게 유지하고 먼저 작동시켜야합니다. 내가 원하는 책으로 aBook 설정하기 전에 당신이있는 viewDidLoad 내부 bookDes를 호출 할 수 있다는 생각 -

희망이

+0

www.iPhoneSDKArticles.com의 예제 코드를 사용하십시오. BookDetailViewController라는 이름을 사용합니다. 그러나 사용자가 제목을 클릭하면 자세한 내용을 보려면 표보기에 책을 표시하고 싶지 않습니다. 위 코드를 살펴보면서 위에서 말한 것을 찾았지만 찾지 못했습니다. - http://www.iphonesdkarticles.com/2008/11/parsing-xml-files.html – RussellHarrower

+0

내가 말할 수있는 것은 모두 당신의 왕이다! 효과 있음 – RussellHarrower

관련 문제