ANDROID - 如何在图像上显示文本?

3

好的...这是场景...从头开始,我想要显示三颗星(我有一张图片想要使用),居中。我想在每个星星里发布一个不同的单词。当然,我不想硬编码,但一旦我可以得到正确的布局,其余的将会很容易。有人能帮忙吗?非常感激。


什么是硬编码?你想从XML文件中完成吗?如果是这样,我建议尝试使用相对布局来重叠一个ImageView和TextView,并创建您的星形元素。否则,您可以创建一个自定义视图,接受文本并自动在星形上方显示它,然后您可以从代码中调用该元素。 - Jason Rogers
3个回答

3
如果您想在图像上叠加文本,只需将ImageView放入FrameLayout中,并在ImageView后面定义一个TextView即可。它会被覆盖在上面。对于您在初始问题中建议的内容,Reuben和Yahel的答案将是更好的选择。
示例:
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    >
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/my_image"
        />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Text on Top!"
        />
</FrameLayout>

0

只需使用“背景”属性,该属性适用于每个视图,包括TextView,将星号放入其中即可。工作完成。


那么,如果我想在自定义图像中显示文本,我应该使用TextView吗?还是类似ImageView的东西? - seanmack

0

只需要使用您的TextViews的android:background属性即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接