将图像与按钮内的文本组合在一起

时间:2017-12-06 11:44:29

标签: android xml

嗨,大家好我刚接触编码,目前正在学习xml和java for android。 我试图制作一个说GOAL的Button而不是“O”它会有一个球的形象,我试着在一个设计师程序中制作一个图像,里面用球的图标表示目标而不是使用它作为按钮的图像背景,但它错过了灰色(我计划改变为绿色)背景,它不是真正的我想要的。 有没有办法在具有文本的按钮内添加图像? 或者我应该在不同的软件中设计按钮,而不是将其添加为按钮的背景?

喜欢“Te~ImageHere~xt”

2 个答案:

答案 0 :(得分:2)

您可以使用ImageSpan在文字之间添加drawable。以下是一个例子。

  TextView textView=(TextView)findViewById(R.id.b1);
    Spannable span = new SpannableString("G OL");
    Drawable android = getResources().getDrawable(R.mipmap.ic_launcher);
    android.setBounds(0, 0, 50,50);
    ImageSpan image = new ImageSpan(android, ImageSpan.ALIGN_BASELINE);
    span.setSpan(image, 1, 2, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
    textView.setText(span);

以下是输出。您可以修改边界。 enter image description here

答案 1 :(得分:0)

尝试使用android:drawableLeft="@mipmap/ic_launcher_round"Button

中添加图片
<Button
    android:text="Prem"
    android:drawableLeft="@mipmap/ic_launcher_round"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

您还可以使用drawableTopdrawableBottomdrawableRightdrawableEnd,例如以下代码

android:drawableTop="@mipmap/ic_launcher_round"
android:drawableBottom="@mipmap/ic_launcher_round"
android:drawableRight="@mipmap/ic_launcher_round"
android:drawableLeft="@mipmap/ic_launcher_round"
android:drawableEnd="@mipmap/ic_launcher_round"