【发布时间】:2018-03-12 03:29:58
【问题描述】:
我想创建一个这样的自定义形状按钮:
我可以通过使用RelativeLayout 并重叠一个矩形和一个圆形来实现类似的效果。但是这样,我必须添加 2 个onClickListaners,每个形状一个.
在 android 中有没有办法(除了使用图像,因为在图像中整个矩形视图将是可点击的,而不仅仅是按钮)使用单个 XML 布局文件创建这样的设计??
【问题讨论】:
-
不,你不能只在 xml 中这样做
-
@pskink 那怎么可能?
-
你需要一个自定义的
View来:1) 使用CanvasAPI 通过覆盖View#onDraw来绘制你的自定义形状和2) 检测点击事件是否在自定义View#onTouchEvent内的那个形状内方法 -
@pskink 你能告诉我们为什么你认为这在 XML 中是不可能的吗?
-
@KalaBalik 如何检测
MotionEvent是否在某个复杂形状内?在xml中...
标签: android android-button xml-layout