在 UITextView 中使用 KeyCommands - 查看我的快捷方式 * 和 * 系统快捷方式
Using KeyCommands in UITextView - see my shortcuts *and* system shortcuts
我有一个 UITextView 子类,我使用 KeyCommands(只是 returns 一个 UIKeyCommands 数组)设置了一些快捷方式:
public override UIKeyCommand[] KeyCommands {
get
{
var sel = new ObjCRuntime.Selector("HandleKeyCommand:");
return new UIKeyCommand[] {
....
UIKeyCommand.Create((NSString)",", UIKeyModifierFlags.Command,
sel, (NSString)"Toggle Bullets"),
UIKeyCommand.Create((NSString)"/", UIKeyModifierFlags.Command,
sel, (NSString)"Toggle Numbers"),
UIKeyCommand.Create((NSString)"1", UIKeyModifierFlags.Command,
sel, (NSString)"Heading 1"),
....
}
}
}
快捷键工作正常。唯一的问题是当我按住 cmd 键时,快捷方式的 display。我看到 我的快捷方式和系统快捷方式。见下文:
有谁知道为什么会这样,我怎样才能禁用系统快捷方式的显示?非常感谢。
这是(恕我直言)一个 iOS 错误。应该只显示当前 UI 组件的快捷方式,而不是 OS 的。邮件、日历和其他苹果应用程序会出现此问题。
我已经向 apple 提交了一个错误。
这是在编辑新电子邮件时发生的事情:
我有一个 UITextView 子类,我使用 KeyCommands(只是 returns 一个 UIKeyCommands 数组)设置了一些快捷方式:
public override UIKeyCommand[] KeyCommands {
get
{
var sel = new ObjCRuntime.Selector("HandleKeyCommand:");
return new UIKeyCommand[] {
....
UIKeyCommand.Create((NSString)",", UIKeyModifierFlags.Command,
sel, (NSString)"Toggle Bullets"),
UIKeyCommand.Create((NSString)"/", UIKeyModifierFlags.Command,
sel, (NSString)"Toggle Numbers"),
UIKeyCommand.Create((NSString)"1", UIKeyModifierFlags.Command,
sel, (NSString)"Heading 1"),
....
}
}
}
快捷键工作正常。唯一的问题是当我按住 cmd 键时,快捷方式的 display。我看到 我的快捷方式和系统快捷方式。见下文:
有谁知道为什么会这样,我怎样才能禁用系统快捷方式的显示?非常感谢。
这是(恕我直言)一个 iOS 错误。应该只显示当前 UI 组件的快捷方式,而不是 OS 的。邮件、日历和其他苹果应用程序会出现此问题。
我已经向 apple 提交了一个错误。
这是在编辑新电子邮件时发生的事情: