我想检测UITextField上的触摸操作.
看起来"触摸内部"动作不是通过触摸文本字段内部来触发的.
我可能在这里遗漏了一些东西,但......
我有一个UIView带几个孩子(一对夫妇UILabel的和UIImageView).当用户点击(点击)父级内部的任何位置时,我需要捕获一个事件UIView- UIView它或其任何子级的可见部分).
这样做的最佳方法是什么?
当我点击已经选中的按钮时,我希望我的UIButton显示突出显示的状态.
基本上在突出显示的状态下,我将*.png图像应用为我的UIButton backgroundImage以产生按下效果.
但是如果按钮已经处于选中状态当我再次点击它时,我只是看不到突出显示的状态,但它直接进入正常状态!
观看问题 - >问题 视频!
请帮忙
//0 init UIButton
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(x, y, aSide, aSide)];
//1 Give it a backgroundColor
[button setBackgroundColor:aColor];
[..]
//2 Set titleLabel and its style
[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[button setTitleColor:[UIColor redColor] forState:UIControlStateSelected];
[button setTitleColor:[UIColor grayColor] forState:UIControlStateHighlighted];
UIImage *shadowImage = [UIImage imageNamed:kBtnShadow];
shadowImage = [shadowImage stretchableImageWithLeftCapWidth:floorf(shadowImage.size.width/2) topCapHeight:floorf(shadowImage.size.height/2)];
[button setBackgroundImage:shadowImage forState: UIControlStateHighlighted];
[button setTitle:aLabel forState: UIControlStateNormal];
//3 Assign tag and Action
[button setTag:tag];
[button addTarget:target action:a forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud) 我在我的一个ViewControllers中有一个UIButton,它有三个不同的状态图像(正常,突出显示和选中).当我按下此按钮时,它会突出显示,当我释放它时,会被选中.我想制作一个动画,使用fadeIn左右,在4秒内将按钮的高亮显示图像更改为所选按钮.
有什么建议吗?
我把UIButton里面UITableViewCell在UITableView其后面UIScrollView.我继承UIScrollView了转发的内容UITableView.
所以方法来自UITableViewDelegate didSelectRow正确调用.问题是UIButton内部表格单元格没有接收TouchUpInside动作.
如何ScrollView在不删除的情况下解决此问题TableView?
编辑:
我通过检测哪个视图将接收触摸来解决此问题.这是代码:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UIView *hitView = [self hitTest:[(UITouch*)[[touches allObjects] objectAtIndex:0] locationInView:self] withEvent:event];
if ([hitView isKindOfClass:[UIButton class]]) {
[(UIButton*)hitView sendActionsForControlEvents:UIControlEventTouchUpInside];
}
[super touchesBegan:touches withEvent:event];
}
Run Code Online (Sandbox Code Playgroud) uibutton uitableview uiscrollview uiresponder touch-up-inside
我正在创建一个相机应用程序swift,我有一个UIButton. 我想提出两个选项:当用户单击按钮时 - 它会拍照,当用户将手指放在按钮上时 - 它会记录电影直到用户释放按钮。
我有录音和拍照功能,现在我需要区分用户对按钮的操作。
此按钮的可用操作包括:
我试图开始录制touch down并停止录制touch up inside,但是我不知道我应该把负责拍照的代码放在哪里。如果我也把它放进去,touch down那么当用户开始录制电影时 - 也会拍照,我想避免它。
我在设置中有一个uiswitch,允许用户在应用程序中查看一些敏感的东西.在允许用户通过点击更改交换机之前,我想提示他们提供密码.
我尝试禁用开关,但是从禁用的开关检测到敲击/触摸是不可能的(没有一些kludgy的变通方法).
在uiswitch更改值之前是否有事件或方法来检测触摸/点击,以便我可以阻止它更改值并显示提示?
我尝试使用触地得分并触摸内部,但他们并没有阻止价值的变化.
谢谢你的任何建议.
我正在创建一个应用程序,我在UITableView的url中显示一些rss内容,直到这里它的工作完美.但在这里我想要的是当用户点击并按住UITableViewCell超过5秒时做其他功能.我只想知道如何知道单个选择并单击并按住UITableViewCell的选择.
谢谢
ios ×5
uibutton ×4
iphone ×2
objective-c ×2
uitableview ×2
animation ×1
iboutlet ×1
selected ×1
swift ×1
uiresponder ×1
uiscrollview ×1
uiswitch ×1
uitextfield ×1