[英]Changing image alpha
在我的应用程序中,我试图在输入字段中将其选中,填充或留空时更改图标(图像视图)的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>>
您正在创建新的UIImageView,如果您是在InterfaceBuilder中创建的,则需要为每个UIImageView创建一个@property
,并在情节提要/ xib上链接IBOutlet。
如果要以编程方式创建UIImageViews,则只是忘记添加:
[self.view addSubview:YOUR_IMAGEVIEW];
例:
[self.view addSubview:imageUserIcon];
我看到您正在创建UIImageView,但尚未将其添加到视图层次结构中。 如果要更改现有UIImageView的Alpha,则需要通过IBOutlet提供对其的引用以调整其属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.