正文  电脑教程 > 服务器教程 >

Android中TextView显示圆圈背景或设置圆角

  前言   在我们学习android这么久,而且使用TextView那么长时间,我们一直没有用过给TextView添加背景,或者是给TextView添...

  前言

  在我们学习android这么久,而且使用TextView那么长时间,我们一直没有用过给TextView添加背景,或者是给TextView添加添加边框,以及怎么样设置TextView的形状。今天在写代码的时候就用到了,怎么在java代码部分设置TextView的背景,和TextView的形状及边框。

  方法如下:

  接下来我们来看一下,怎么在Java代码部分怎么设置TextView的背景颜色,其实很简单的就一句话。

  tvTemp.setBackgroundColor(Color.parseColor("#00FF00"));

  我们在xml布局文件中就可以直接调用drawable文件代码如下:

  android:background="@drawable/textview"

  在我们设置背景的时候, 我们都知道使用 setBackgroundColor()方法,但是,方法里面的参数,必须是RGB HTML格式的值,如果我们用drawable,它会提示drawable是int类型的。(其实如果可以的话我们不妨使用ImageView组件,这个组件相对TextView更好用)。

  我们接下来就来看看怎么给让TextView显示边框,并且怎么样让其显示圆形。这里我们就需要在drawable里面,新建一个.xml文件。

  android:shape="oval"

  android:useLevel="false">

  android:width="15dp"

  android:height="15dp" />

  这只是一个圆形,其中, stroke属性,是设置的他的边框颜色和宽度,在xml布局中显示的是如图所示的样式:

Android中TextView显示圆圈背景或设置圆角

  xml样式

  最后我们就可以在xml文件中利用drawable调用。

  其中我们在xml中不仅可以设置圆形,而且还可以设置圆角,

  属性就是设置圆角

  我们在介绍一些关于shape里面的知识:

  gradient -- 颜色渐变

  startcolor 起点颜色

  endcolor 终点颜色

  android:angle 角度 0是从左到右,90是从下到上

  solid -- 填充

  stroke -- 描边

  corners -- 圆角

  padding -- 内容离边界的距离

  当我们需要在java代码中需要设置TextView时,发现通过上面的方法设置,圆角就会消失,在这里怎么让圆角不会消失,我们需要:

  GradientDrawable myGrad = (GradientDrawable)tv_test.getBackground();

  myGrad.setColor(Color.BLUE);