这几天在做一个小软件,做的按钮本来是干巴巴的Button,就是白底黑字的按钮,但是背景用图片做了,按钮还是这样就很不美观了。我想到了用ImageButton,但是又发现不能设置文字而且ImageButton的图片不能自适应大小,难不成要自己按照分辨率做一个带文字的图片?这样明显不行,最后还是在别人的一个仿微信的软件的源码里找到了答案。近乎完美地解决了我的问题,不仅可以在图片上添加文字,而且图片可以自适应不通的分辨率,同时可以增加按下和选中(获得焦点)效果,忍不住赞一个。在这里记录一下。
一般初学安卓,我们的Button的设置都是ID、layoutwidth、layoutheight、text等,需要的时候可以设置background,但是初学一般background引用的就是一个图片
1 android:backgronud="@drawable/pic0"
这样显然太过死板了,而且不能很好地匹配不同的手机屏幕。那么如何解决呢?
这里就是利用这个background的引用,设置一个Button.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <selector xmlns:android="http://schemas.android.com/apk/res/android"> 3 4 <item android:drawable="@drawable/focused"