打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android学习笔记16:Button控件图文混排效果的实现

Android学习笔记16:Button控件图文混排效果的实现




  Button继承自TextView,所以TextView的一些属性同样也适用于Button控件。


  Button的直接子类为CompoundButtonButton的间接子类有CheckButtonRadioButtonSwitchToggleButton


1.Button常用属性设置


1.1设置Button的背景颜色


  要设置Button按钮的背景颜色,可以通过在xml文件中设置android:background属性实现,同样也可以通过在代码中使用setBackgroundColor()方法来实现。


<Button 


  android:id="@+id/button1"


  android:layout_width="match_parent"


  android:layout_height="wrap_content"


  android:text="按钮一:设置按钮背景颜色为黄色"


  android:background="#ffff00" />


1.2设置Button的文字颜色


  要设置Button按钮的文字颜色,可以通过在xml文件中设置android:textColor属性实现,同样也可以通过在代码中使用setTextColor()方法来实现。


<Button 


  android:id="@+id/button2"


  android:layout_width="match_parent"


  android:layout_height="wrap_content"


  android:text="按钮二:设置按钮文字颜色为红色"


  android:textColor="#ff0000" />


1.3设置Button的文字格式


  要设置Button按钮的文字格式,可以通过在xml文件中设置android:textStyle属性实现。其中,参数italic表示斜体,参数bold表示粗体。


<Button 


  android:id="@+id/button3"


  android:layout_width="match_parent"


  android:layout_height="wrap_content"


  android:text="按钮三:设置按钮文字斜体"


  android:textStyle="italic" />


1.4设置Button的背景图片


  要设置Button按钮的背景图片,可以通过在xml文件中设置android:background属性实现,同样也可以通过在代码中使用setBackgroundResource()方法来实现。


<Button 


  android:id="@+id/button4"


  android:layout_width="wrap_content"


  android:layout_height="wrap_content"


  android:text="按钮四"


  android:background="@drawable/android_logo" />


1.5效果图


  上述四种Button常用属性效果如图1所示。



 图1 Button常用属性设置效果图


 


2.Button事件监听器


  Button的常用事件监听器有以下一些:


  mButton.setOnClickListener();//点击事件监听器


  mButton.setOnTouchListener();//触摸事件监听器


  mButton.setOnFocusChangeListener();//焦点状态改变事件监听器


  mButton.setOnKeyListener();//按键事件监听器


  mButton.setOnLongClickListener();//常压事件监听器


   这些事件监听器可以用来响应对Button按钮的不同操作,使用方法比较简单,此处就不多介绍了。


 


3.Button按钮图文混排


  如何在Button按钮中实现图文混排效果,以满足丰富的Button式样需求呢?这里简单介绍两种方法。


3.1通过设置android:drawableTop等属性来实现


  在xml文件中,想要实现图片环绕文字的效果,可以通过设置以下四个属性来实现。


  android:drawableTop设置文字上方显示的图片


  android:drawableBottom设置文字下方显示的图片


  android:drawableLeft显示文字左边显示的图片


  android:drawableRight显示文字右边显示的图片


  通过设置以上四个属性,便可以很轻松的实现图片环绕文字的效果了,一个简单的demo源代码如下。


 


demo code


 


3.2通过SpannableString类对象来实现


  除上述方法外,我们也可以通过使用SpannableString类来实现Button按钮的图文混排效果,具体实现步骤如下:


  首先,我们需要创建一个SpannableString对象,目的是用来插入用ImageSpan对象封装好的图像。


  其次,我们还需要创建一个Bitmap对象,并通过资源Id取得要使用的图像。再将该Bitmap图像用ImageSpan对象封装起来。


  然后,通过使用SpannableString类的setSpan()方法加载该ImageSpan对象。


  最后,通过使用Button控件的append()方法来加载SpannableString对象即可。


  通过上述四个步骤也同样可以实现图片环绕文字的效果,一个简单的demo源代码如下。


 


demo code


 


3.3效果图


  上述两个demo的运行结果如图2所示。由图可以看出,通过上述两种方式可以达到相同的Button按钮图文混排效果


 



 图2 Button按钮的图文混排效果


 


 


 


 


 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android退出程序离开与关闭程序的弹出窗口
Android控件重叠显示小记
Android Layout 布局动画的介绍
【Android布局】在程序中设置android:gravity 和 android:la...
Android 基本按钮
Android应用程序----UI界面控件(相对布局,绝对布局)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服