今天我接受了挑战,创建了一个自定义iOS键盘,用于反转输入字符串并将其显示在textview上
的输入:
Hello StackOverflow!
的输出:
!wolfrevOkcats olleH
我尝试将按钮标题存储到[NSString]
数组中,然后使用reverse()
函数将其显示在textview上。
这是我的代码:
@IBAction func keyboardBtnPressed(sender: AnyObject) {
let button = sender as! UIButton
//identify the button title
let buttonTitle = button.titleForState(.Normal)
//letters and string are [NSString]() arrays.
if let currentTitle = buttonTitle{
switch currentTitle {
case "Space":
//if user pressed space bar, then display the result on the screen
for letter in self.letters {
(textDocumentProxy as! UIKeyInput).insertText(letter as String)
letters.removeAll(keepCapacity: false)
self.string.removeAll(keepCapacity: false)
}
(textDocumentProxy as! UIKeyInput).insertText(" ")
default:
//else append the letters to the array
string.append(currentTitle)
self.letters = self.string.reverse()
}
}
}
输出:
elloH !wolfrevOkcats
与哪个不相同:!wolfrevOkcats olleH
自定义键盘是否可以控制光标,因此它不是从left to right
移动而是从right to left
开始?
在做了一些研究后,我发现我可以编辑Info.plist
文件并更改PrefersRightToLeft
字典中的bool值。
这是不允许。
还有更好的方法吗? 感谢。