可能重复:
为什么 TextView 的背景会改变它的大小?
我有一个 TextView,我将在其中动态放置文本,它有一个背景(自定义位图,不是纯色或渐变)。我希望 TextView(当然还有背景)环绕包含的文本(wrap_content)。我该怎么做?
我发现的唯一一件事是使背景位图非常小,然后它会拉伸和换行。但这不会是好的质量......
可能重复:
为什么 TextView 的背景会改变它的大小?
我有一个 TextView,我将在其中动态放置文本,它有一个背景(自定义位图,不是纯色或渐变)。我希望 TextView(当然还有背景)环绕包含的文本(wrap_content)。我该怎么做?
我发现的唯一一件事是使背景位图非常小,然后它会拉伸和换行。但这不会是好的质量......
如果您放置固定大小的背景图像,那么您的视图将采用它的大小,因此您需要使用没有大小的背景,以便它可以占用您的文本大小。为此,您可以执行以下 2 件事:
1.获取1像素的图像。
2.绘制渐变图像:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="270"
android:endColor="#FFFFFF"
android:startColor="#FFFFFF"
android:type="linear" >
</gradient>
<corners android:radius="10dp" />
<stroke
android:width="2dp"
android:color="#AAAAAA" />
</shape>
注意:有关详细说明,请点击链接。
编辑:
3.如果图像不是普通的或渐变的,那么您需要在每次设置文本时以编程方式设置文本视图的宽度。
试试这个方法。。
EditText saveas = new EditText(context);
saveas.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
我认为它对你有帮助。
谢谢