制作一个按钮,其背景和内容仅在指定的内部矩形内绘制(而不是在其所有框架内)
Posted
技术标签:
【中文标题】制作一个按钮,其背景和内容仅在指定的内部矩形内绘制(而不是在其所有框架内)【英文标题】:Make a button whose background and content is drawn only within specified inner rectangle (not within all its frame) 【发布时间】:2014-10-22 12:42:56 【问题描述】:我正在寻找一种简单的方法来创建一个按钮(或UIView
的其他子类),该按钮不是在其所有框架中绘制,而是仅在指定的内部(插入)矩形内绘制。内部(插入)矩形将具有一些自定义半径的圆角。下图演示:
总结一下:
控件将响应其所有框架(外部矩形)内的触摸事件 控件的内容、背景等只会在内部(插入)矩形中绘制 内部矩形的大小和圆角半径必须是可定制的子类化是一种选择,但我会采用更简单的解决方案。
【问题讨论】:
这并不能回答您的问题,但它提供了一种完成您想做的事情的方法。 ***.com/questions/808503/… 【参考方案1】:这可以通过以下方式之一实现:
在自定义按钮内添加一个子视图,并为其角半径提供一些值,使其变为圆形。您可以在此视图中添加背景、内容等。但这必须是一个自定义按钮,您需要通过提供一些 API 来处理添加内容。
另一种选择是在按钮内添加一个圆角图层,但有此限制。您不能将子视图添加到您的插入矩形(子层)。您只能向其添加图层而不是视图。
【讨论】:
以上是关于制作一个按钮,其背景和内容仅在指定的内部矩形内绘制(而不是在其所有框架内)的主要内容,如果未能解决你的问题,请参考以下文章