问题标签 [uilongpressgesturerecogni]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 获取某些单元格的快照不起作用
我想在长按后获取单元格的快照并让它工作。我正在通过此代码创建快照:
它正在工作,但有时我会在输出中收到此消息:
对尚未渲染的视图进行快照会导致快照为空。确保在快照或屏幕更新后的快照之前至少渲染一次视图。
我只为某些细胞(只有少数)得到它,而且并非总是如此。有时它会从该单元格生成快照,而有时它会返回 nil。我已经检查过了,我总是输入单元格。那为什么呢?为什么渲染会导致空快照?谢谢
编辑: 我已将手势识别器添加到我的 tableView:
我正在longPressDetected
方法中创建快照:
感谢kirander 的回答,我的快速解决方案:
swift - 确定是否拖动单元格路径 == 节标题路径
我正在实现自定义拖放,我想要的是创建单元格的副本(只是用于显示的图像)并且当此副本的位置与标题相同时,我想更改标题的背景颜色,如果该位置再次超出标题框架,则恢复他的背景颜色。
我坚持要确定正确的道路,到目前为止我得到了这个:
我在逻辑中缺少什么?
ios - iOS8 - 如何在 iOS 8 中更改长按手势的灵敏度
我有一个 UIView 长按时会翻转。在模拟器中效果很好,但在现实世界中,人的手指在按下时会有微小的动作。这些微小的动作重置手势并立即触发手势结束状态。
uibutton - 多个 UIButtons 的长按和点击识别器
我的用户界面上有多个按钮,我想根据不同类型的点击执行不同的功能,
- 单击
- 双击
- 长按
单击一次对我来说很容易,一个连接了所有四个按钮的 IBAction,但是对于其他类型的点击,我被卡住了,
我知道我需要使用点击手势识别器,但我无法将其设置为多个 UIButtons,
这是我想做的例子
ios - 触发操作时以编程方式制作的 UIButton 不会被删除
目前,我有一个按钮,可以UIView
使用UIButton
. 当我长按它UIButton
时,会出现一个警报视图,我有两个按钮,一个删除按钮和一个取消按钮。删除按钮应该删除最后一次长按UIButton
,但它会删除最近创建的UIButton
。
我希望警报视图上的删除按钮删除最后一次长按UIButton
。(不是最近创建的)我尝试了不同的 if 语句,但这是我到目前为止所拥有的。这是我的 .m 文件的代码:
如何使删除按钮删除最近长按的_buttonField?
ios - UILongPressGestureRecognizer iOS 用于连续动作
我有一个按钮,我想“按住”按钮,这样它将继续打印“长按”,直到我释放按键。
我在 ViewDidLoad 中有这个:
和
我也试过这个:
它只打印出长按!即使我按住按钮一次。谁能告诉我哪里做错了或者我错过了什么?谢谢!
ios - 如何在 swift 中长按 UITableViewCell 调用另一个控制器?
我正在使用下面的代码来显示,但由于这条线MyEditViewController
,所有的现场插座MyEditViewController
都为零let editController = MyEditViewController()
。在这里,我正在创建新实例。所以现在网点是零。有没有其他方法可以调用编辑控制器而不创建它的实例?
ios - 斯威夫特:动画CALayer
在下面的代码中,当用户按住屏幕(longPressGestureRecognizer)时,我试图将 aCALayer
从屏幕左侧动画到屏幕右侧。当用户抬起手指时,CALayer
暂停。
我有两个问题:
当我打印
CALayer
动画后(当用户抬起手指时)的宽度时,它始终为 0。我为宽度设置动画,并使其扩展,因此我不知道为什么它不给我新的CALayer
.用户抬起手指,然后再次按住,
CALayer
消失。我需要它保留在屏幕上,并创建另一个CALayer
,我不会以任何方式删除它,所以我不明白为什么它也会消失。我检查了对象仍然存在的内存。
更新问题#2:我相信创建另一个CALayer
我不能只是再次添加图层。我必须创建一个副本或创建一个UIView
可以添加图层的副本。我仍然不明白为什么它会消失。
ios - 在 UITableView 中使用 UILongPressGestureRecognizer 拖放单元格
我正在开发一个在 ViewController 中带有 tableView 的应用程序。在这个 tableView 中,我有部分和行,我希望我的用户能够使用UILongPressGestureRecognizer在部分之间长按、拖放单元格。
使用以下代码,我的手势识别器可以工作,但是当我尝试将单元格拖放到 tableView 中的任何位置时,我的应用程序崩溃了。崩溃发生在两条不同的行中。当单元格被长按并在一个部分内拖动时,它会在该行崩溃:tableView.moveRowAtIndexPath(Path.initialIndexPath!, toIndexPath: indexPath!)
如果我尝试将其拖出一个部分,它会在该行崩溃:swap(&Categories.categories[indexPath!.row], &Categories.categories[Path.initialIndexPath!.row])
(包含每个部分和行的数据的数组位于一个单独的类中,名为 Categories。包含部分的数组称为“sections”,包含行的数组称为“categories”。)
我将不胜感激任何帮助找出它失败的原因以及如何解决它。
谢谢!