无法在 iOS 11 GM 中更改多个文本字段颜色
Posted
技术标签:
【中文标题】无法在 iOS 11 GM 中更改多个文本字段颜色【英文标题】:Can't change multiple textfield colors in iOS 11 GM 【发布时间】:2017-09-13 14:12:30 【问题描述】:在 ios 10.3 模拟器上工作,但在您点击文本字段之前不能在 iOS 11 上工作。
层次结构:
下面的示例代码。
#import "ViewController.h"
@interface ViewController ()
@property (nonatomic) UITextField *textField1;
@property (nonatomic) UITextField *textField2;
@end
@implementation ViewController
- (void)viewDidLoad
[super viewDidLoad];
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(0, 50, 50, 30)];
textField.borderStyle = UITextBorderStyleLine;
[self.view addSubview:textField];
self.textField1 = textField;
UITextField *textField2 = [[UITextField alloc] initWithFrame:CGRectMake(0, 100, 50, 30)];
textField2.borderStyle = UITextBorderStyleLine;
[self.view addSubview:textField2];
self.textField2 = textField2;
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0, 200, 50, 50)];
button.backgroundColor = [UIColor blueColor];
[button addTarget:self action:@selector(changeColor) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.textField1];
[self.view addSubview:self.textField2];
[self.view addSubview:button];
- (void)changeColor
self.textField1.textColor = [UIColor greenColor];
self.textField2.textColor = [UIColor greenColor];
【问题讨论】:
你能澄清你的问题吗?实际发生了什么以及何时发生? 我正在尝试在点击按钮时更改两个 UITextField 的文本颜色。只有一个文本字段实际更改文本颜色。在图像中的检查器中,Xcode 认为颜色是绿色 (R:0 G:1 B:0),但显示的仍然是黑色。我目前在应用商店中有一个应用正在做同样的事情,但在 iOS 10 中这不会发生。 是的,我也有这个问题。用令人耳目一新的文字回答对我有用。 这不是解决方案。我们使用递归例程设置所有按钮、文本字段等的颜色。重置该例程中的文本会清空所有不可接受的字段。 【参考方案1】:试试这个。
#import "ViewController.h"
@interface ViewController ()
@property (nonatomic) UITextField *textField1;
@property (nonatomic) UITextField *textField2;
@end
@implementation ViewController
- (void)viewDidLoad
[super viewDidLoad];
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(0, 50, 50, 30)];
textField.borderStyle = UITextBorderStyleLine;
[self.view addSubview:textField];
self.textField1 = textField;
UITextField *textField2 = [[UITextField alloc] initWithFrame:CGRectMake(0, 100, 50, 30)];
textField2.borderStyle = UITextBorderStyleLine;
[self.view addSubview:textField2];
self.textField2 = textField2;
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0, 200, 50, 50)];
button.backgroundColor = [UIColor blueColor];
[button addTarget:self action:@selector(changeColor) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.textField1];
[self.view addSubview:self.textField2];
[self.view addSubview:button];
- (void)changeColor
self.textField1.textColor = [UIColor greenColor];
self.textField2.textColor = [UIColor greenColor];
self.textField1.text = self.textField1.text;
只需重置 textfiled1 文本。
【讨论】:
以上是关于无法在 iOS 11 GM 中更改多个文本字段颜色的主要内容,如果未能解决你的问题,请参考以下文章
无法在 iOS 13 上更改 Main.storyboard 的名称 [Xcode 11 GM 种子 2]