2014-09-18 2 views
0

В моем приложении я пытаюсь изменить альфу изображения (вид изображения) в поле ввода, когда выбран, заполнен или лишен пустой.Изменение изображения alpha

Я написал этот код, но ничего не происходит, я уверен, что я написал имена изображений, поскольку они названы в моем каталоге изображений.

Пример кода;

- (IBAction)passwordInputTab:(id)sender { 

    UIImageView *imageLockIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"lock-icon.png"]]; 
    imageLockIcon.alpha = 1; 
    //self.txtPassword.alpha = 1; 

    if ([[self.txtUsername text] isEqualToString:@""]) { 
     //self.txtUsername.alpha = 0.5; 
     UIImageView *imageUserIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"user-icon.png"]]; 
     imageUserIcon.alpha = 0.5; 
    } 
} 

- (IBAction)usernameInputTab:(id)sender { 

    UIImageView *imageUserIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"user-icon.png"]]; 
    imageUserIcon.alpha = 1; 

    NSLog(@"==> %@", imageUserIcon); 

    //userIcon.alpha = 0.1; 

    if ([[self.txtPassword text] isEqualToString:@""]) { 

     UIImageView *imageLockIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"lock-icon.png"]]; 
     imageLockIcon.alpha = 0.5; 
     NSLog(@"==> %@", imageLockIcon); 
     //self.txtPassword.alpha = 0.5; 
    } 
} 

Журнал;

2014-09-18 21:47:10.882 ...[1280:60b] ==> <UIImageView: 0x14e8dd90; frame = (0 0; 17 16); opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x14e8de10>> 
2014-09-18 21:47:10.884 ...[1280:60b] ==> <UIImageView: 0x14d66770; frame = (0 0; 12 16); alpha = 0.5; opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x14da43d0>> 

ответ

1

Вы создаете новые UIImageViews, если вы создали их в InterfaceBuilder, вам нужно создать @property для каждого из них и связать IBOutlets на вашем раскадровке/xib.

Если вы хотите создать UIImageViews программно вы только забывают добавить:

[self.view addSubview:YOUR_IMAGEVIEW]; 

Пример:

[self.view addSubview:imageUserIcon]; 
+0

Благодаря Магск! Решено IBOUtlet! :) – directory

0

Я вижу, что вы создаете UIImageView, но не добавляете его в иерархию представлений. Если вы пытаетесь изменить альфа на существующем UIImageView, вам нужно будет предоставить ссылку на него через IBOutlet, чтобы настроить его свойства.

Смежные вопросы