Java 按钮不存在';按此键时无法更改背景

Java 按钮不存在';按此键时无法更改背景,java,android,android-button,Java,Android,Android Button,基本上,我想做一个按钮,当按下按钮时,它的高度会增加,以实现从后面“滑出”的效果,我在许多应用程序上看到了这个效果,我觉得很酷,但我似乎无法让它工作。我尝试了多种方法: Button.onTouch方法和Button.setwidth(50) Button.onClick方法,具有与上述相同的功能 现在我尝试在XML中使用选择器,它看起来是这样的: <selector xmlns:android="http://schemas.android.com/apk/res/android">

基本上,我想做一个按钮,当按下按钮时,它的高度会增加,以实现从后面“滑出”的效果,我在许多应用程序上看到了这个效果,我觉得很酷,但我似乎无法让它工作。我尝试了多种方法:

Button.onTouch方法和Button.setwidth(50)

Button.onClick方法,具有与上述相同的功能

现在我尝试在XML中使用选择器,它看起来是这样的:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/dugme1_pressed" android:state_selected="true"></item>
    <item android:drawable="@drawable/dugme1"></item>
</selector>


如果您在按钮单击时更改代码中的高度和背景,您会更容易。我尝试使用:button.setheight和button.setBackground(可绘制)共享代码如果您在按钮单击时更改代码中的高度和背景,您会更容易。我尝试使用:button.setheight和button.setBackground(可绘制)分享你的代码
button.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                if(event.getAction() == MotionEvent.ACTION_DOWN)
                {
                    ViewGroup.LayoutParams params = button.getLayoutParams();
                    params.height+=500;
                }
                return false;
            }
        });
button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            ViewGroup.LayoutParams params = button.getLayoutParams();
            params.height+=500;
        }
    });