Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 创建两个自定义按钮_Android_Button_Custom Component - Fatal编程技术网

Android 创建两个自定义按钮

Android 创建两个自定义按钮,android,button,custom-component,Android,Button,Custom Component,有人能帮我创建如下自定义按钮吗?可能吗?我搜索了很多,只找到了一些东西,结果又是矩形/方形。但我希望两个按钮是三角形的,并且排列在另一个按钮的上方,并且只能在其特定的占用区域上单击。欢迎使用代码片段 您可以通过扩展视图并对其方法进行子类化来实现,如下所示 public class BottomLeftTriangleButton extends View { // Copy superclass contructors @Override public boolean

有人能帮我创建如下自定义按钮吗?可能吗?我搜索了很多,只找到了一些东西,结果又是
矩形/方形
。但我希望两个按钮是
三角形的
,并且排列在另一个按钮的上方,并且只能在其特定的占用区域上单击。欢迎使用代码片段


您可以通过扩展
视图
并对其方法进行子类化来实现,如下所示

public class BottomLeftTriangleButton extends View {

    // Copy superclass contructors

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if (event.getX() / getWidth() < event.getY() / getHeight()) {
            return super.onTouchEvent(event);
        }
        return false;
    }

}
public类bottomLeftTriangalButton扩展视图{
//复制超类构造函数
@凌驾
公共布尔onTouchEvent(运动事件){
if(event.getX()/getWidth()
这样,您的自定义视图只截获左下角区域上的点击,对应于您的“按钮2”区域。您可以通过更改“”使其他区域可单击


然后将两个视图放在同一个
框架布局中
,就完成了。

通过创建一个与上图类似的图像,在逻辑上是可能的。因为您不能重新塑造命令按钮的形状。@Raynold但如果我们创建一个图像,单击事件如何在各自的形状上分开?您如何解决这个问题?我有一个问题[这里][1][1]:你能详细说明如何创建三角形按钮,并像上图一样相互排列吗?将你的两个自定义按钮放在相同的
框架布局
,并将它们的
android:background
设置为你的按钮图像。三角形按钮没有默认资源,您必须自己制作图像。您可以使用一个按钮,在按下和正常状态下使用不同的图像。谢谢您的时间。我的问题是如何准备这些定制按钮。我不明白你说的“准备”是什么意思?你可以走了。