手指触摸/拖动时更改 UIButton 大小

Posted

技术标签:

【中文标题】手指触摸/拖动时更改 UIButton 大小【英文标题】:Change UIButton size while finger is touching it/while it's being dragged 【发布时间】:2013-09-21 19:45:14 【问题描述】:

我有一个可拖动的 UIButton。我希望它在被拖动或触摸时具有不同的背景图像。我想使用的图像是正常图像的两倍。我试过正常的:

[button setBackgroundImage:buttonHighlightedImage forState:UIControlStateHighlighted];

但这不起作用。任何想法或提示将不胜感激。

【问题讨论】:

我还没有机会尝试实现它来看看它有多好/如果它完全符合您的要求,但是这个呢? ***.com/questions/6939866/… 【参考方案1】:

这个怎么样:

            [button addTarget:self action:@selector(btnTouch:) 
    forControlEvents:UIControlEventTouchDown];
            [button addTarget:self action:@selector(btnTouchCancel:) 
    forControlEvents:UIControlEventTouchCancel];

            -(void)btnTouch:(id)sender
                UIButton *button=sender;
                [button setBackgroundImage:buttonHighlightedImage forState:UIControlStateNormal];
            

            -(void)btnTouchCancel:(id)sender
                UIButton *button=sender;
                [button setBackgroundImage:buttonNormalImage forState:UIControlStateNormal];
            

【讨论】:

您需要调整按钮框架的大小以适应新图像,但这个答案有效。谢谢!

以上是关于手指触摸/拖动时更改 UIButton 大小的主要内容,如果未能解决你的问题,请参考以下文章

使用 UIButton 进行触摸检测

如何在手指从1按钮拖动到下一个按钮时触发UIButton事件

如何触摸 UIImageView,然后用另一个 UIImageView 替换,当手指移动时它会拖动,而不用抬起手指

拖动时在 UIButton 上填充背景颜色

斯威夫特,触摸 UIButton 并触摸另一个

拖动 UIButton 时移动拖动手柄