2014-02-25 180 views
1

我正在文本字段上执行两个操作: 1)使用平移手势移动文本字段。 2)当用户点击它时在文本框上写入。 关注的是,我想一次执行一个操作,即当用户正在写入时他不能滚动,反之亦然。从文本字段中移除焦点

的UIButton动作的名称---按钮 的UIButton出口---选项按钮

- (IBAction)button:(id)sender 
{ 
    if([_optionButton.titleLabel.text isEqualToString:@"SCROLL"]) 
    { 
     NSLog(@"can scroll"); 
     NSLog(@"POINT=============%d ",point); 
     point=0; 
     [_optionButton setTitle:@"WRITE" forState:UIControlStateNormal]; 
     textField1.enabled=NO; 
    } 
    else 
    {  NSLog(@"can write"); 
     NSLog(@"POINT=============%d ",point); 
     point=1; 
     [_optionButton setTitle:@"SCROLL" forState:UIControlStateNormal]; 
     textField1.enabled=YES; 
    } 
} 

点变量控制所述完整操作,并在beginning.This被设置为1的名称意味着用户可以在开始时写,如果他想写,他必须按下按钮。 我面临的问题是,通过使用“textField1.enabled = NO”我无法滚动文本框。 是否有任何函数使用我可以从文本字段中删除焦点,但可以滚动它。

+1

[文本字段resignFirstResponder]; –

回答

7

您可以使用此代码删除焦点(如在评论中一说),

[textField1 resignFirstResponder]; 
0

一个的UITextField只有1号线,让你不容滚动它。

UPDATE

如果你想用手指使用UIPanGestureRecognizer在父视图中移动你的UITextField,并在您的UITextField应用更改。

+0

我正在按照snapchat的步骤移动文本框。 – user3275031

0

,您还可以通过调用[textField1 endEditing:YES]移除焦点从文本字段