在ImageButton中实现文字的插入


如何简单实现一个带文字的ImageButton:

 

1.新建一个类,重写ImageButton的构造方法,使得它能够通过代码添加文字;

 

2.在新建的类中设置想要赋予给ImageButton的属性。


首先新建一个类,继承自Android SDK v7包下的AppCompatImageButton,在里面声明实现该功能所需要设置的属性。如:需要设置文字,需要定义一个String类型的text,以及设置相对应的大小size以及颜色color等等....属性设置好了如下:

在ImageButton中实现文字的插入_第1张图片

接着在新建的类中定义相关属性的设置方法:

在ImageButton中实现文字的插入_第2张图片

最后调用onDraw方法实现上述功能:

在ImageButton中实现文字的插入_第3张图片

到了这里已经基本完成,接下来就是如何使用的问题,因为是继承自AppCompatImageButton,在布局文件中的用法基本和AppCompatImageButton用法一致,这里布局中的使用不再作叙述。下面简述如何添加文字以及设置相关属性。

在ImageButton中实现文字的插入_第4张图片

然后就可以设置相对应的点击事件啊等等什么的了...附上效果图:


若觉得字体过于细小,下面说说如何加粗字体。其实很简单,像之前设置其他属性一样,

在声明中加入一个判断是否加粗的一个布尔类型:private boolean bold

然后加入:
public void isBold (boolean bold) {
    this.bold = bold;    //设置是否加粗
}
最后在onDraw方法中加入:   paint.setFakeBoldText(bold); //是否加粗
然后在代码中设置是否加粗字体即可:  love.isBold(true);
上述功能的实现都是基于onDraw方法支持,读者也可以尝试设置onDraw方法中的其他属性,或者用其他方法实现需求。
PS:第一次接触Android,有什么不对和需要改进的地方还请大家多加指正,在此致谢。


 
  





你可能感兴趣的:(在ImageButton中实现文字的插入)