Android下Button实现图文混排效果
程序员文章站
2023-11-12 12:54:22
button实现图文混排效果,具体内容如下
一、简介
本文介绍两种图文混排方式
1、android:drawabletop="@drawable/star"实现文字上...
button实现图文混排效果,具体内容如下
一、简介
本文介绍两种图文混排方式
1、android:drawabletop="@drawable/star"实现文字上有图片
当然有上下左右等等
2、spannablestring的imagespan实现图文混排
二、代码实例
效果图:
一二三四是用的第一种方式
下面的用的第二种方式
代码:
fry.activity02
package fry; import com.example.buttondemo1.r; import android.app.activity; import android.graphics.bitmapfactory; import android.os.bundle; import android.text.spannable; import android.text.spannablestring; import android.text.style.imagespan; import android.view.motionevent; import android.view.view; import android.view.view.onclicklistener; import android.view.view.onfocuschangelistener; import android.view.view.ontouchlistener; import android.widget.button; public class activity02 extends activity { private button btn_big; @override protected void oncreate(bundle savedinstancestate) { // todo auto-generated method stub super.oncreate(savedinstancestate); setcontentview(r.layout.activity02); btn_big=(button) findviewbyid(r.id.btn_big); //spannablestring的imagespan添加左边图片 spannablestring spannablestring1=new spannablestring("left"); imagespan imagespan=new imagespan(this, bitmapfactory.decoderesource(getresources(), r.drawable.image_left)); spannablestring1.setspan(imagespan, 0, 4, spannable.span_exclusive_exclusive); //spannablestring的imagespan添加右边图片 spannablestring spannablestring2=new spannablestring("right"); imagespan imagespan2=new imagespan(this, bitmapfactory.decoderesource(getresources(), r.drawable.image_right)); spannablestring2.setspan(imagespan2, 0, 5, spannable.span_exclusive_exclusive); btn_big.append(spannablestring1); btn_big.append("我的按钮"); btn_big.append(spannablestring2); } }
/buttondemo1/res/layout/activity02.xml
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <linearlayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <!--android:drawabletop="@drawable/star"实现文字上有图片 --> <button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="一" android:drawabletop="@drawable/star" /> <!--android:drawablepadding="30dp实现文字和文字上的图片中间有30dp的空隙 --> <button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="二" android:drawabletop="@drawable/star" android:drawablepadding="30dp" /> <button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="三" android:drawableright="@drawable/star" /> <button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="四" android:drawableleft="@drawable/star" /> </linearlayout> <button android:id="@+id/btn_big" android:layout_width="180dp" android:layout_height="200dp" /> </linearlayout>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。