imagebutton设置文字,imagebutton点击效果

http://www.itjxue.com  2023-01-12 21:30  来源:未知  点击次数: 

如何在ImageView上添加文字

可以考虑使用ImageButton代替ImageView,这样可以在ImageButton中设置Text,同时将背景设置为需要的图片。

android studio 的imagebutton可以填充文字吗

不可以的

你可以用tableLayout部局,上面一行放ImageButton,第二行放文字

tableLayout里不同行的同一列的组件是等宽的

备注:tableLayout的每一行的组件是tableRow

如何在ImageButton上写字Android

1,可以看到ImageButton的layout,我们可以直接直接继承,添加一个TextView,对齐方式为右侧即可实现ImageButton支持文字右侧显示

2,如果在程序中写要setText();

在配置文件中写是android:text="";

请教如何更改Button样式,或是能否在ImageButton上添加文字

通过分析可以看到ImageButton的layout,我们可以直接直接继承,添加一个TextView,对齐方式为右侧即可实现ImageButton支持文字右侧显示。“

如何在imagebutton上加文字

今天Android项目中遇到一个ImageButton控件上面要显示文字,无奈自定义了一个ImageButton,继承自ImageButton。其实就是override这个控件的onDraw(Canvas canvas)方法;代码如下:

package sRoger.pack.Utility;

import android.content.Context;

import android.graphics.Canvas;

import android.graphics.Paint;

import android.graphics.Paint.Align;

import android.util.AttributeSet;

import android.widget.ImageButton;

/**

* 自定义ImageButton

* 可以在ImageButton上面设置文字

* @author SJR

*/

public class CustomImageButton extends ImageButton {

private String _text = "";

private int _color = 0;

private float _textsize = 0f;

public CustomImageButton(Context context, AttributeSet attrs) {

super(context, attrs);

}

public void setText(String text){

this._text = text;

}

public void setColor(int color){

this._color = color;

}

public void setTextSize(float textsize){

this._textsize = textsize;

}

@Override

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

Paint paint = new Paint();

paint.setTextAlign(Align.CENTER);

paint.setColor(_color);

paint.setTextSize(_textsize);

canvas.drawText(_text, canvas.getWidth()/2, (canvas.getHeight()/2)+12, paint);

}

}

Activity对应的布局xml文件代码:

LinearLayout

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:orientation="horizontal"

sRoger.pack.Utility.CustomImageButton

android:id="@+id/login_btnLogin"

android:layout_width="0dp"

android:layout_height="wrap_content"

android:src="@drawable/login_btn_bg"

android:background="#eeeeee"

android:scaleType="fitXY"

android:layout_marginLeft="15dp"

android:layout_marginTop="15dp"

android:layout_marginRight="5dp"

android:layout_weight="1"/

sRoger.pack.Utility.CustomImageButton

android:id="@+id/login_btnRegister"

android:layout_width="0dp"

android:layout_height="wrap_content"

android:src="@drawable/login_btn_bg"

android:background="#eeeeee"

android:scaleType="fitXY"

android:layout_marginLeft="5dp"

android:layout_marginRight="15dp"

android:layout_marginTop="15dp"

android:layout_weight="1" /

/LinearLayout

这是我的程序里面使用这个自定义ImageButton的代码。

下面就是为这个自定义的ImageButton设置字体了(就是我使用这个自定义的ImageButton的Activity里面),代码如下:

package sRoger.pack.MyActivity

import sRoger.pack.R;

import sRoger.pack.Utility.CustomImageButton;

import android.app.Activity;

import android.graphics.Color;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.Window;

import android.widget.LinearLayout;

import android.widget.Toast;

public class LoginActivity extends Activity {

private CustomImageButton login_btn_login;

private CustomImageButton login_btn_register;

//自定义ImageButton上面显示的字体的大小

private float BTN_TEXTSIZE = 32f;

//自定义ImageButton上面显示的字体的颜色

private int BTN_TEXTCOLOR = Color.WHITE;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 设置当前Activity没有标题栏

requestWindowFeature(Window.FEATURE_NO_TITLE);

//设置当前Activity为全屏模式

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.login_activity);

login_btn_login = (CustomImageButton)findViewById(R.id.login_btnLogin);

login_btn_register = (CustomImageButton)findViewById(R.id.login_btnRegister);

// 设置自定义ImageButton上面要显示的文本内容

login_btn_login.setText("登录");

// 设置自定义ImageButton上面要显示的文本内容

login_btn_register.setText("注册");

login_btn_login.setColor(BTN_TEXTCOLOR);

login_btn_register.setColor(BTN_TEXTCOLOR);

login_btn_login.setTextSize(BTN_TEXTSIZE);

login_btn_register.setTextSize(BTN_TEXTSIZE);

}

}

(责任编辑:IT教学网)

更多