原来听很多人说Button不能使用自定义的点击或选中效果,所以做下测试

结果显示Button很强大

完全可以使用这种灵活的方法

 方法一

1.放在drawable下的selector.xml文件

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:andro />
</selector>

 

2.布局文件main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:andro/>
</LinearLayout>

 

3.只是为了测试,所以效果不是很好,Button部分状态效果图如下:

 

①初始化的时候默认显示的按钮效果:

 

Android中的Button自定义点击效果

 

②点击后释放显示的效果

 

Android中的Button自定义点击效果

 

③点击不放时的效果

 

Android中的Button自定义点击效果

 

 

 方法二

1.布局文件main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:andro/>
</LinearLayout>

 

2.主要的java代码,实现点击效果:
   Button button = (Button) this.findViewById(R.id.button);
   button.setOnTouchListener(new Button.OnTouchListener(){
   @Override
   public boolean onTouch(View v, MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_DOWN){   
                    v.setBackgroundResource(R.drawable.temp1);   
                    Log.i("TestAndroid Button", "MotionEvent.ACTION_DOWN");
                }   
                else if(event.getAction() == MotionEvent.ACTION_UP){   
                    v.setBackgroundResource(R.drawable.temp2); 
                    Log.i("TestAndroid Button", "MotionEvent.ACTION_UP");
                } 
    return false;
   }
  });

这个方法实现的效果和上面的一样,大家可以视具体情况来选择

相关文章:

  • 2022-12-23
  • 2021-10-27
  • 2021-10-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-02
  • 2022-12-23
  • 2022-01-03
  • 2022-12-23
  • 2022-12-23
  • 2021-06-08
相关资源
相似解决方案