Joh*_*kes 8 iphone uitextfield
是否可以使用leftView设置UITextField,这样如果用户点击UITextField,键盘会显示,但如果他们点击leftView中的图标,则会调用另一个方法(即显示UIPickerview的方法)?
Jam*_*ell 20
你有没有检查过leftFieldViewMode是否设置为never
[textField setLeftViewMode:UITextFieldViewModeAlways];
Run Code Online (Sandbox Code Playgroud)
像普通人那样实例化一个按钮
UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom];
[btn setFrame:CGRectMake(0,0,30,30)];
[btn setTitle:@"title" forState:UIControlStateNormal];
[btn addTarget:self action:@selector(BtnClick) forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)
像往常一样实例化文本字段
UITextField *txtfield1=[[UITextField alloc]initWithFrame:CGRectMake(10, 10,300,30)];
[txtfield1 setBackgroundColor:[UIColor grayColor]];
[txtfield1 setPlaceholder:@" Enter"];
Run Code Online (Sandbox Code Playgroud)
在左侧设置视图(右视图也可用)
[txtfield1 setLeftView:btn];
Run Code Online (Sandbox Code Playgroud)
如果你希望视图总是显示,那么下面的代码就可以了
[txtfield1 setLeftViewMode:UITextFieldViewModeAlways];
Run Code Online (Sandbox Code Playgroud)
如果你想让视图永远显示
[txtfield1 setLeftViewMode:UITextFieldViewModeNever];
Run Code Online (Sandbox Code Playgroud)
如果您希望视图显示文本字段是否未编辑,则在下面
[txtfield1 setLeftViewMode:UITextFieldViewModeUnlessEditing];
Run Code Online (Sandbox Code Playgroud)
如果你想让视图显示是否编辑了文本字段
[txtfield1 setLeftViewMode:UITextFieldViewModeWhileEditing];
Run Code Online (Sandbox Code Playgroud)
按钮单击事件并弹出
-(void)BtnClick
{
//Usual pop over coding goes here
}
Run Code Online (Sandbox Code Playgroud)
您是否尝试过使用 UIButton 来完成此任务?来自 leftView 属性的文档:
如果您的覆盖视图不与任何其他同级视图重叠,它将像任何其他视图一样接收触摸事件。如果您为视图指定一个控件,该控件将照常跟踪和发送操作。但是,如果覆盖视图与清除按钮重叠,则清除按钮始终优先接收事件。
因此,创建一个 UIButton 实例,根据需要配置其外观和操作,然后将其设置为 leftView 属性。
| 归档时间: |
|
| 查看次数: |
7311 次 |
| 最近记录: |