是否可以设置一个带有leftView的UITextField,以便当用户单击UITextField时键盘显示,但如果用户单击leftView中的图标,则会调用另一个方法(即显示UIPickerview的方法)?
发布于 2012-07-11 19:10:39
您是否检查过leftFieldViewMode是否设置为其他值,而不是从不
[textField setLeftViewMode:UITextFieldViewModeAlways];发布于 2013-08-01 17:04:21
像平常一样实例化一个按钮
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];像往常一样实例化文本字段
UITextField *txtfield1=[[UITextField alloc]initWithFrame:CGRectMake(10, 10,300,30)];
[txtfield1 setBackgroundColor:[UIColor grayColor]];
[txtfield1 setPlaceholder:@" Enter"];在左侧设置视图(也可以设置右侧视图)
[txtfield1 setLeftView:btn];如果你想让视图始终显示,那么下面的代码就可以做到
[txtfield1 setLeftViewMode:UITextFieldViewModeAlways];如果您希望视图永远不会显示,那么
[txtfield1 setLeftViewMode:UITextFieldViewModeNever];如果您希望在未编辑文本字段的情况下显示视图,则在下面
[txtfield1 setLeftViewMode:UITextFieldViewModeUnlessEditing];如果您希望在编辑文本字段时显示视图,则
[txtfield1 setLeftViewMode:UITextFieldViewModeWhileEditing];按钮单击事件并弹出
-(void)BtnClick
{
//Usual pop over coding goes here
}发布于 2010-01-04 12:39:39
您是否尝试过使用UIButton执行此任务?来自leftView属性的文档:
如果您的覆盖视图不与任何其他同级视图重叠,则它会像任何其他视图一样接收触摸事件。如果为视图指定了一个控件,该控件将照常跟踪并发送操作。但是,如果覆盖视图与clear按钮重叠,则clear按钮始终优先接收事件。
因此,创建一个UIButton实例,根据需要配置其外观和操作,然后将其设置为leftView属性。
https://stackoverflow.com/questions/1997298
复制相似问题