我想长时间按UITableViewCell
下来打印"快速访问菜单".有人已经这样做了吗?
特别是手势识别UITableView
?
我想模仿一个长按按钮,我该怎么做?我认为需要一个计时器.我明白UILongPressGestureRecognizer
但是我怎么能利用这种类型呢?
我目前正在摆弄Android编程,但我在检测不同的触摸事件时遇到一个小问题,即正常触摸按下(按下屏幕并立即释放),长按(触摸屏幕并按住手指) )和移动(在屏幕上拖动).
我想要做的是在屏幕上有一个图像(圆圈),我可以拖动它.然后,当我按一次(短/正常按下)时,Toast会提供一些关于它的基本信息.当我长按它时,会出现一个带有列表的AlertDialog来选择不同的图像(圆形,矩形或三角形).
我使用自己的OnTouchListener创建了一个自定义视图来检测事件并在onDraw中绘制图像.OnTouchListener.onTouch是这样的:
// has a touch press started?
private boolean touchStarted = false;
// co-ordinates of image
private int x, y;
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
touchStarted = true;
}
else if (action == MotionEvent.ACTION_MOVE) {
// movement: cancel the touch press
touchStarted = false;
x = event.getX();
y = event.getY();
invalidate(); // request draw
}
else if (action == MotionEvent.ACTION_UP) {
if (touchStarted) {
// touch …
Run Code Online (Sandbox Code Playgroud) 我想连接一个动作,如果手势是一个轻击,它会以特定方式动画一个对象,但如果按下持续时间超过.5秒,它会做其他事情.
现在,我只是把动画连接起来了.我不知道如何区分长按和水龙头?如何访问印刷机持续时间以实现上述目标?
@IBAction func tapOrHold(sender: AnyObject) {
UIView.animateKeyframesWithDuration(duration, delay: delay, options: options, animations: {
UIView.addKeyframeWithRelativeStartTime(0, relativeDuration: 0, animations: {
self.polyRotate.transform = CGAffineTransformMakeRotation(1/3 * CGFloat(M_PI * 2))
})
UIView.addKeyframeWithRelativeStartTime(0, relativeDuration: 0, animations: {
self.polyRotate.transform = CGAffineTransformMakeRotation(2/3 * CGFloat(M_PI * 2))
})
UIView.addKeyframeWithRelativeStartTime(0, relativeDuration: 0, animations: {
self.polyRotate.transform = CGAffineTransformMakeRotation(3/3 * CGFloat(M_PI * 2))
})
}, completion: { (Bool) in
let vc : AnyObject! = self.storyboard?.instantiateViewControllerWithIdentifier("NextView")
self.showViewController(vc as UIViewController, sender: vc)
})
Run Code Online (Sandbox Code Playgroud) 我在 SwiftUI 中有一个按钮,我希望能够对“点击按钮”(正常点击/点击)和“长按”执行不同的操作。
这在 SwiftUI 中可能吗?
这是我现在拥有的按钮的简单代码(仅处理“正常”点击/触摸案例)。
Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
} .disabled(self.BLEinfo.isScanning)
Run Code Online (Sandbox Code Playgroud)
我已经尝试添加一个“长按手势”,但它仍然只“执行”“正常/短”点击。这是我试过的代码:
Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
.fontWeight(.regular)
.font(.body)
.gesture(
LongPressGesture(minimumDuration: 2)
.onEnded { _ in
print("Pressed!")
}
)
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
杰拉德
我正在构建一个iPhone应用程序,让用户重新排列屏幕上的一些UI元素.
如何在同一个UIView中添加点击手势识别器和长按手势识别器?当我从长按中抬起手指时,轻敲手势识别器会触发.如何在用户执行长按时暂时禁用轻敲手势识别器或阻止其触发?
谢谢!
在长按ActionBar项目后,如何隐藏吐司有一些可行的方法吗?我没有设置该项目的标题,但它仍然存在 - 空的吐司.
<item
android:id="@+id/ab_main_menu_dots"
android:icon="@drawable/action_icons_dots"
android:showAsAction="always">
<menu>
<item
android:id="@+id/ab_main_menu_my_profile"
android:showAsAction="never"
android:title="@string/ab_my_profile">
</item>
<item
android:id="@+id/ab_main_menu_settings"
android:showAsAction="never"
android:title="@string/menu_settings">
</item>
<item
android:id="@+id/ab_main_menu_help"
android:showAsAction="never"
android:title="@string/tv_help_login">
</item>
<item
android:id="@+id/ab_main_menu_about_us"
android:showAsAction="never"
android:title="@string/ab_about_us">
</item>
<item
android:id="@+id/ab_main_menu_logout"
android:showAsAction="never"
android:title="@string/bt_logout_main">
</item>
</menu>
</item>
Run Code Online (Sandbox Code Playgroud)
android toast long-press actionbarsherlock android-actionbar
我希望能够使用longPress手势(不使用标准重新排序控件)重新排序tableview单元格.在识别出longPress后,我希望tableView基本上进入"编辑模式",然后重新排序,好像我正在使用Apple提供的重新排序控件一样.
有没有办法在不需要依赖第三方解决方案的情况下做到这一点?
提前致谢.
编辑:我最终使用了在接受的答案中的解决方案,并依赖于第三方解决方案.
默认的微调器行为是当它"关闭"时,长按它将"打开"它并显示下拉视图.我发现这种行为对用户来说可能是非常有问题的.例如,如果他们试图在屏幕上滚动某些内容,并碰巧"抓住"一个有微调器的地点,那么它会在一秒左右打开下拉视图而不是滚动,并且用户是基本上用手指放在其中一个下拉选项上(他们现在可能会意外按下).
所以,我想禁用那个长按行为,并且只在单击它时让旋转器"打开",而不是长按.那可能吗?
有人在Windows Phone 7应用程序中实现了Tap&Hold吗?我可以看到几个可能的方法KeyDown/KeyUp和一个计时器或ManipulationStarted/manipulationCompleted和一个计时器.
然而,这让我觉得这不是一个想法,因为不同的应用程序会有不同的计时器设置导致不一致.
我错过了什么吗?我希望有一个TapAndHold活动
long-press ×10
ios ×5
android ×3
iphone ×2
uitableview ×2
button ×1
java ×1
move ×1
objective-c ×1
spinner ×1
swift ×1
swiftui ×1
tapandhold ×1
toast ×1
touch ×1
uibutton ×1
uiview ×1