【问题标题】:circle button in iOSiOS中的圆形按钮
【发布时间】:2015-07-19 21:45:49
【问题描述】:

首先,我知道类似的问题已被多次询问和回答,但是,没有一个是我想要的。

我正在尝试创建一个 圆形/椭圆形按钮。按钮应正常响应椭圆形内部的触摸,而在外部触摸时不响应。我遇到的问题是,当触摸矩形的角(椭圆外)时,我尝试过的任何方法都无法阻止按钮响应。

从本质上讲,按钮不仅需要看起来像一个椭圆形,而且响应也是一个椭圆形。

任何帮助将不胜感激!

编辑:所以我认为我需要构建一个自定义控件。这是一个附带项目,因此可能需要一些时间,但我会在 github 上提供它并在此处发布指向它的链接。 谢谢你的意见!

【问题讨论】:

  • 开箱即用,没有这样的东西。除非您愿意使用 SceneKit 中的物理实体。如果您想要UIView 中的解决方案,请考虑编写自己的解决方案。它应该相当简单。

标签: objective-c swift uibutton uikit


【解决方案1】:

不完全确定这是否是您想要的,但如果您单击 UIButton,转到右侧的 Identity Inspector 选项卡,转到显示 User Defined Runtime Paths 的位置并单击 + 按钮并输入此信息:

Key Path: layer.cornerRadius 
Type: Number
Value: Any number

对于一个完全圆形的圆,将值设为按钮高度值的 1/2。您可以使用不同的值来获得您想要的外观。

注意:圆角不会显示在情节提要上。但它们确实显示在模拟器上。

根据您的问题,无法确定这是否是您想要的。希望对您有所帮助。

【讨论】:

  • 是的,cornerRadius,添加层,和类似的改变只是按钮的外观......而不是响应触摸的区域......
【解决方案2】:

您总是可以创建一个按钮并将按钮的背景设置为椭圆形。

【讨论】:

  • 如果您不明白,请随时要求澄清
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-09
  • 1970-01-01
  • 2012-08-28
  • 1970-01-01
  • 2012-03-09
相关资源
最近更新 更多