2011-09-13 1 views
0
- (void)viewDidLoad 
{ 
     [super ViewDidLoad]; 

     [brandTextField addTarget:self action:@selector(showImageFromFilter) forControlEvents:UIControlEventAllEvents]; 
} 


- (void)showImageFromFilter 
{ 
     if (brandTextField.text == @"Awake") 
     { 
      NSString * imageString = @"awake_top_purple.png"; 

      UIImage * womenTopImage = [[UIImage alloc] initWithContentsOfFile:imageString]; 

      womenTopImageView.image = [[UIImageView alloc] initWithImage:womenTopImage]; 

     womenTopImageView.contentMode = UIViewContentModeScaleAspectFit; 
    } 
} 

다음은 내가하는 일에 대한 일반적인 아이디어입니다.UIPicker를 기반으로 UIImage 기반의 선택을 표시하는 데 도움이 필요합니다.

나는 각각 UIPicker에 연결된 3 개의 TextField를 가지고 있습니다. 나는 값이있는 배열 셋을 가지고있다. 특정 값을 설정하면 UITextField 아래에 이미지가 표시됩니다.

이것은 내가 시도하지만 작동하지 않는 것입니다. 나는 옳은 길을 가고 있거나 누군가 내가 이것을 어떻게 작동시킬 수 있는지 설명 할 수 있습니다.

감사

답변

0
brandTextField.text == @"Awake" 

이 문자열을 비교하지 않습니다.

[brandTextField.text isEqualToString:@"Awake"] 

문자열을 비교합니다.

또 다른 문제 :

은 그냥있는 UIImage를 얻을 수

[UIImage imageNamed:@"awake_top_purple.png"]; 

를 사용, initWithContentsOfFile는 전체 경로가 필요합니다.

는 또한합니다 (V 소문자)

[super ViewDidLoad] 

에 오타가 있습니다.

그리고 UIPicker를 showImageFromFilter 메서드에 연결하는 가장 좋은 방법인지 잘 모르겠습니다.

Apple의 샘플 코드와 설명서를 읽으면 작업 방법에 대한 느낌이 훨씬 좋아집니다.

+0

- (공극) showImageFromFilter { 경우 ([brandTextField.text isEqualToString : @ "각성"]) { womenTopImageView.image = [UIImageView에 ALLOC] initWithImage [있는 UIImage imageNamed : @ "awake_top_purple.png"] ]; womenTopImageView.contentMode = UIViewContentModeScaleAspectFit; } } –

+0

이 모양이 더 좋습니까? 이미지가 아직 표시되지 않습니다. 해당 코드를 viewDidLoad 또는 - (void) pickerView : (UIPickerView *)에 추가해야합니다 .PickerView didSelectRow : (NSInteger) row inComponent : (NSInteger) component –

+0

또한 [self showImageFromFilter]를 추가하면이 문제가 발생합니다. didSelectRow 메서드에서 –