2016-10-04 116 views
0

我需要让我的应用程序有一个键盘长按按钮弹出。(xcode)我想长时间按一下按钮,导致键盘弹出

我知道如何识别长按,但问题是让键盘弹出并让键盘知道要编辑哪个var。

感谢您的任何帮助。

编辑:为了更具体的我想按钮是一个名字,所以我将有:

p1s1PlayerName.setTitle(String(player1name), for UIControlState.normal) 

,然后我将有长按弹出键盘。然后,键盘需要编辑

var player1name = "TextInputFromKeyboard" 

完整的代码需要被编辑:

var player1name = "John" 

    func userLongPressed(_ sender: Any) { 
     print("user long pressed") 
     p1s1PlayerName.becomeFirstResponder() 
    } 

    @IBOutlet var p1s1PlayerName: UIButton! 

    @IBAction func p1s1LongPressPlayerName(_ sender: AnyObject) { 
      // This is where I don't know what to put to call to the function and have the keyboard pop up 
    } 
+0

'which var' means? –

+0

@ Mr.UB对不起,不好意思。更具体地说,我希望按钮是一个名称,所以我会:'p1s1PlayerName.setTitle(String(player1name),for:UIControlState.normal)'然后我会长按弹出键盘。然后,键盘需要编辑'VAR player1name = “TextInputFromKeyboard”'' – Baker2795

回答

1

当您设置长按,有称为选择包括下面的代码。

textfieldToEdit.becomeFirstResponder() 

如果您希望为用户提供一些信息文本,只需将其分配给占位符。

textfieldToEdit.placeholder = "Enter name here" 
+0

FUNC @IBAction p1s1LongPressPlayerName(_发件人:AnyObject){ \t \t p1s1PlayerName.becomeFirstResponder() \t}'所以我把我的长按代码为类似这但是当我长按仍然没有任何反应。对不起,我还是新:( – Baker2795

1

开始新增长期手势您的按钮像

let longPress = UILongPressGestureRecognizer(target: self, action: #selector(self.longPress)) 
p1s1PlayerName.addGestureRecognizer(longPress) 

,并调用方法类似

func userLongPressed(_ sender: Any) { 
print("user long pressed") 
    yourTextfieldName.becomeFirstResponder() 
} 

的按钮单按

p1s1PlayerName.addTarget(self, action: #selector(self.userTapped), forControlEvents: .touchUpInside) 
p1s1PlayerName.setTitle(String(player1name), for UIControlState.normal) 

和行动像

func userTapped(_ sender: Any) { 
print("user tapped") 
} 
+0

'FUNC userLongPressed(_发件人:任意){ \t \t打印( “用户长按”) \t \t p1s1PlayerName.becomeFirstResponder() \t} \t @IBAction FUNC p1s1LongPressPlayerName(_发件人:AnyObject){ \t \t userLongPressed(Any.self) }' 所以我对长按代码如下所示,它打印“用户长按”,但仍然没有键盘,我无法理解你的。原始代码意味着我仍然是新的,所以对不起,如果我做了错误,你已经解释。 – Baker2795

+0

@ Baker2795 - 好吧,这是什么** userLongPressed(任何。自我)** –

+0

甚至不知道从哪里来。所以我在longpress函数之外有'userLongPressed'函数。那么,为了调用'userLongPressed'函数,我在longpress函数中放了什么? – Baker2795