2011-12-20 2 views
0

일부 셀에는 UITableView가 있습니다. 셀을 두드리면 (자), 「Index」라고하는 캐릭터 라인 변수를, 탭 한 셀의 인덱스에 설정합니다. 나는 이것이 UIImageView의 컨트롤러에서 색인의 NSLog로 작업하고 있음을 확인했다. 이제는 UIImageView의 이미지를 탭 한 셀 (즉 각 셀의 다른 이미지)에 해당하는 이미지로 설정합니다. 나는 (이 작동하지 않습니다)이 작업을 수행하기 위해 노력하고있어 방법은 내있는 UIImageView의 컨트롤러의 viewDidLoad 메소드에서이 코드입니다 :변수에 따라 UIImageView를 다른 이미지로 초기화합니다.

if ([[TableViewController alloc] Index] isEqualToString:@"0"]) { 
    Display.image = [UIImage imageNamed:@"0.jpg"]; 
} 

'디스플레이'내있는 UIImageView의 이름입니다. 이 코드가 맞습니까? 그것이 있다면, 내가 어디에 UIImageView가 "0.jpg"라는 이미지로 초기화하는 첫 번째 셀을 가볍게두면 좋을까요?

+0

는,이 작품 Display.image = [있는 UIImage imageNamed @ "0"아마 뭔가이 좋아해야한다 ]; 'if 문없이. –

+0

[[TableViewController alloc] Index]가 의미하는 바는 사용자의 뷰에서 알 수없는 것처럼 보입니다. 최선의 방법은이 문제를 피하고 tableView didSelectRow ... 메서드에서 선택된 행을 설정하는 인스턴스 변수를 사용하는 것입니다. – Bek

답변

0

이미지보기 컨트롤러가 테이블보기와 같은 화면에 이미 표시되어 있습니까 (로드 중), 아니면 테이블보기에서 각 셀 탭에 대한 새 이미지보기 컨트롤러를 밀고 있습니까? 이것은 이것에 접근하는 방법에 커다란 차이를 만듭니다. 이전 작업을 수행하는 경우 뷰가 이미로드되어 있기 때문에 viewDidLoad를 사용하면 작동하지 않습니다. 당신은 같은 이미지를 변경하는 방법을 작성해야 : 새 이미지보기 매번 밀어 경우

-(void)changeImage:(NSString *)imageName { 
    Display.image = [UIImage imageNamed:imageName]; 

것은 다음 이미지보기 클래스의 인스턴스 변수를 만들고 싶어거야, 그리고 테이블 뷰 didSelectRow ... 방법이를 넣어 :

myImageView.imageName = [NSString stringWithFormat:@"%d.jpg", indexPath.row]; 
//now push your view 

우리의 의견을로드하는 방법으로 상황을 볼 수있는 코드의 자세한 내용을 게시하는 데 도움이 될 수 있습니다.

+0

매번 새로운 ImageView를 밀고 있습니다. –

+0

그럼 난 확실히 당신의 imageview 클래스에서 문자열을 보유하는 인스턴스 변수를 만들 것입니다. 그 tableview 클래스에서 설정하고 작동합니다. 테이블 뷰 클래스에 대한 참조를 만드는 것은 문제를 묻는 것입니다. – Bek

1

if ([[TableViewController alloc] 색인] isEqualToString : @ "0"])은 숫자 (색인)를 문자열 "0"과 비교합니다.

경우 ([[TableViewController의 ALLOC] 색인] == 0) 난 그냥 '이 있다면 그런데

관련 문제