我有一个自定义的UIView包含UILabel和UIImageView。如何让我的UIView可点击?我希望UIView的背景在用户开始按下UIView时随时改变。当用户抬起按钮时,颜色应该变回。我还需要能够处理点击事件。如何使UIView可点击
8
A
回答
20
-(void)addGestureRecogniser:(UIView *)touchView{
UITapGestureRecognizer *singleTap=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(changecolor)];
[touchView addGestureRecognizer:singleTap];
DBLog(@"ADD GESTURE RECOGNIZER");
}
-(void)changecolor{
// do something
}
1`)这是代码片段,其中你需要将视图作为参数传递以便使其可点击。
4
雨燕2.0版本:
不要忘记实现UIGestureRecognizerDelegate
// Add tap gesture recognizer to View
let tapGesture = UITapGestureRecognizer(target: self, action: Selector("onClickOnView"))
tapGesture.delegate = self
self.view.addGestureRecognizer(tapGesture)
func onClickOnView(){
print("You clicked on view..")
}
雨燕3.0版本:
// Add tap gesture recognizer to View
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(clickView(_:)))
tapGesture.delegate = self
view.addGestureRecognizer(tapGesture)
func clickView(_ sender: UIView) {
print("You clicked on view")
}
7
另一种方式是挂钩日通过故事板/界面生成器的手势识别器。
这很容易,而且我觉得比使用代码更简洁。
以下是设置手势识别器的分步参考。只要搜索Gesture Recognizer
:
清单出从上面的链接这里的步骤:
- 将来自
Object library
到场景中的点按手势识别器对象,并将其放置在顶部UIView的。 - 您将会在膳食
scene dock
中看到一个Tap Gesture Recognizer。场景底座是故事板中视图控制器的顶部,您有第一个响应者,退出等。 - 通过将场景底座中的手势识别器拖动到代码显示,将Tap手势识别器连接到您的代码。像操作UIButton操作一样填充“操作”对话框。
- 你完成了! :D
相关问题
- 1. UIView底部不可点击
- 2. 如何使Widget可点击
- 3. 如何使JLabel可点击?
- 4. 如何点击NavigationBar的UIView按钮?
- 5. 如何创建自定义uiview,该按钮可以在uiview中点击?
- 6. 如何使uiview可移动?
- 7. 如何使UIView可滚动?
- 8. 如何使按钮点击后不可点击?
- 9. 如何使JButton点击后不可点击
- 10. 如何使整个div可点击
- 11. 如何使EditText的父级可点击?
- 12. 如何使Xamarin.Droid的TextView上可点击
- 13. 如何使整行可点击?
- 14. 如何使粒子系统可点击
- 15. 如何使navBar的headingText可点击?
- 16. 如何使列表不可点击?
- 17. 如何使整个区域可点击?
- 18. 如何使每个栏可点击(AChartEngine)
- 19. 如何使框阴影可点击
- 20. 如何使Android CheckBoxPreference不可点击?
- 21. 如何使swiper.js图片可点击?
- 22. 如何使TextEdit链接可点击
- 23. 如何使JTextArea或JTextPane列可点击?
- 24. 如何使底层div不可点击?
- 25. 如何使自定义listview可点击
- 26. 我如何使gridview行可点击
- 27. 如何使只有父div可点击?
- 28. C#如何使浏览器可点击
- 29. 如何使textblock中的URL可点击?
- 30. 如何使listview的textview可点击
对不起Noob问题,我是iOS开发新手。 – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 2013-03-19 03:29:58
我通常通过点击手势来模仿点击能够UIView – 2013-03-19 03:31:40
可能重复的[如何添加触摸事件到UIView?](http://stackoverflow.com/questions/4660371/how-to-add-a点触摸事件到一个-的UIView) – 2015-07-14 15:46:19