我有一个应用程序,有许多不同的按钮排列在计算器,如方形/矩形格式.它实际上与默认的iOS计算器非常相似.大约有6行,每个按钮有4列.
问题
我遇到的问题涉及底行中的按钮(大约是iPhone 4屏幕的底部10).当按下它们时,它们不能正常工作,按下它们时必须按住它们(大约不到一秒钟)以注册"按下按钮".这与标准短抽头相反.
除此底行之外没有其他按钮以这种方式运行.
此外,如果这些按钮在其上边缘轻敲,它们会表现正常,一旦触摸就会响应.这让我相信按钮本身不是问题,但是我的视图布局存在一些问题.
还应注意,该问题仅存在于物理设备上.在模拟器上,按钮表现正常.
上下文
包含这些按钮的视图不是应用程序的根视图控制器.相反,它转变为如此(这里没什么特别的):
[self presentViewController:navController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
self是根视图控制器
我遇到问题的视图控制器包含在导航控制器中,并由根视图控制器以模态方式显示,您可以在上面看到.
到目前为止我尝试过的
打开和关闭自动布局:同样的问题
重新排列视图层次结构:我将有问题的按钮移动到所有其他视图的顶部和后面,结果相同:同样的问题
多个设备(iPhone 4,4s,5):同样的问题(虽然按钮在3.5英寸和4英寸模拟器上都能正常响应)
测试其他应用程序(当在其他应用程序上按下此区域中的按钮时,它们的行为正常)
附加信息
我有一个UIView,它包含几乎10个执行不同操作的按钮.用户将能够触摸或点击任何按钮以执行所需的操作.但是,当用户同时按下多个按钮时,我遇到了问题.当同时按下两个按钮(同时)时,将执行两个动作.有时应用程序崩溃了.所以,我不希望用户同时点击多个按钮.有什么方法我可以让视图只识别单个触摸而不是多个触摸,或者至少可以增加多个触摸手势之间的时间间隔...
我的UI中有两个按钮的方法,用于内部修饰.
-(void)buttonPressed:(UIButton *)button{
[yButton setEnabled:NO];
[iButton setEnabled:NO];
pismeno = (button.tag == BUTTON_TAG_Y) ? PismenoYpsilon : PismenoJota;
[self setNewValues];
}
Run Code Online (Sandbox Code Playgroud)
除非我在同一时间同时按下BOTH按钮,否则一切正常.我尝试在内部修饰后禁用它们:
[yButton setEnabled:NO];
[iButton setEnabled:NO];
Run Code Online (Sandbox Code Playgroud)
在我的setNewValues方法的最后启用它们.如上所述,一切正常,除非同时按下BOTH按钮,否则它会崩溃.
我怎么能消除这个? 非常感谢 :)
我有一个弹出窗口,有两个按钮.如何避免在用户使用两根手指并同时点击两个不同按钮的情况?是否有一种方法可以指定一次只允许手势?