Android自定义Button并设置不同背景图片的方法
程序员文章站
2024-02-18 09:10:52
本文实例讲述了android自定义button并设置不同背景图片的方法。分享给大家供大家参考,具体如下:
1、自定义mybutton类
public class...
本文实例讲述了android自定义button并设置不同背景图片的方法。分享给大家供大家参考,具体如下:
1、自定义mybutton类
public class mybutton extends button { //this constructormust be public mybutton(context context, attributeset attrs) { super(context, attrs); } public mybutton(context context) { super(context); } private paint mpaint = null; private string mtext; private int mx, my; public void onsettext(string text, int nleft, int nbottom, int ntextsize, int ntextcolor) { mpaint = new paint(); mpaint.settextsize(ntextsize); mpaint.setcolor(ntextcolor); this.mtext = text; this.mx = nleft; this.my = nbottom; } private int mdownbmpid, mupbmpid; public void onsetbmp(int ndownid, int nupid) { this.mdownbmpid = ndownid; this.mupbmpid = nupid; } @override public void ondraw(canvas canvas) { if (mpaint != null) canvas.drawtext(mtext, mx, my, mpaint); super.ondraw(canvas); } @override public boolean ontouchevent(motionevent event) { if (event.getaction() == motionevent.action_down) { super.setbackgroundresource(mdownbmpid); } else if (event.getaction() == motionevent.action_up) { super.setbackgroundresource(mupbmpid); } return super.ontouchevent(event); } }
2、 在xml布局文件中添加mybutton控件,像应用普通的button控件一样。
<com.mybutton android:id="@+id/test_btn" android:layout_width="120px" android:layout_height="fill_parent" android:text="test" android:background="@drawable/btn_u" />
其中com.mybutton是你定义的mybutton类所在的包名
3、在oncreate()中加载mybutton控件。
mybutton btn = (mybutton)findviewbyid(r.id.test_btn); btn.onsetbmp(r.drawable.btn_d, r.drawable.btn_u);
其中btn_d表示为按下btn时背景图片,btn_u为默认状态下btn背景图片
更多关于android控件相关内容感兴趣的读者可查看本站专题:《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。
推荐阅读
-
Android自定义Button并设置不同背景图片的方法
-
Android实现自定义带文字和图片Button的方法
-
Android Studio 基础之获取Wifi 的状态,设置 Wifi 的开关状态,并监听 Wifi 的状态变化方法整理
-
Android自定义Button并设置不同背景图片的方法
-
Android编程获取并设置Activity亮度的方法
-
Android编程获取并设置Activity亮度的方法
-
Android设置桌面背景图片的实现方法
-
Android设置桌面背景图片的实现方法
-
Android自定义ToolBar并实现沉浸式的方法
-
Android Studio 基础 之 获取蓝牙Bluetooth 的状态,设置的蓝牙Bluetooth 的开关状态,并监听蓝牙Bluetooth 的状态变化方法整理