在我的应用程序中,我试图在输入字段中更改图标(图像视图)的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>>
答案 0 :(得分:1)
您正在创建新的UIImageViews,如果您在InterfaceBuilder中创建它们,则需要为它们中的每一个创建@property
并将故事板/ xib上的IBOutlet链接起来。
如果要以编程方式创建UIImageViews,则只能忘记添加:
[self.view addSubview:YOUR_IMAGEVIEW];
示例:
[self.view addSubview:imageUserIcon];
答案 1 :(得分:0)
我看到你正在创建一个UIImageView但它没有被添加到视图层次结构中。如果您尝试更改现有UIImageView上的alpha,则需要通过IBOutlet提供对它的引用以调整其属性。