Android中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文件。
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" android:useLevel="false"> <solid android:color="#00FF00" /> <stroke android:width="1dip" android:color="#000000" /> <size android:width="15dp" android:height="15dp" /> </shape>
这只是一个圆形,其中, stroke属性,是设置的他的边框颜色和宽度,在xml布局中显示的是如图所示的样式:
xml样式
最后我们就可以在xml文件中利用drawable调用。
其中我们在xml中不仅可以设置圆形,而且还可以设置圆角,
<corners android:radius="15dp" />属性就是设置圆角
我们在介绍一些关于shape里面的知识:
- gradient -- 颜色渐变
- startcolor 起点颜色
- endcolor 终点颜色
- android:angle 角度 0是从左到右,90是从下到上
- solid -- 填充
- stroke -- 描边
- corners -- 圆角
- padding -- 内容离边界的距离
当我们需要在java代码中需要设置TextView时,发现通过上面的方法设置,圆角就会消失,在这里怎么让圆角不会消失,我们需要:
GradientDrawable myGrad = (GradientDrawable)tv_test.getBackground(); myGrad.setColor(Color.BLUE);
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家我们的支持。
相关推荐
-
Android实现带动画效果的可点击展开TextView
本文为大家分享了Android实现带动画效果的可点击展开TextView 制作代码,效果图: 收起(默认)效果: 点击展开后的效果: 源码: 布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/activity_main" xmlns:android="http://schemas.android.com/apk/res/a
-
Android为TextView添加字体库和设置描边的方法
一.使用系统自带的字体 开发Android的人大多都知道,Android里面对字体的支持少得可怜,默认情况下,TextView 的 typeface 属性支持 sans.serif和monospace 这三种字体,如果在没有指定字体的情况下,系统会使用 sans 作为文本显示的字体.但这三种字体只支持英文,也就是说只要你显示的文字是中文,无论你选择这三种字体中的哪一种,显示效果都是一样的. 1.在XML文件中设置 <!-- 使用默认的sans字体--> <TextView android
-
Android自定义TextView实现drawableLeft内容居中
如何实现使用TextView的DrawableLeft使图片和文字居中显示呢??? 代码如下: 1.首先自定义一个类,继承TextView package com.test.signcalendar.weight; import android.content.Context; import android.graphics.Canvas; import android.graphics.drawable.Drawable; import android.util.AttributeSet; i
-
Android TextView对齐的两种方法
Android TextView对齐的两种方法 在写Android布局文件时, 经常碰到如下图的TextView左右对齐的情况, 即姓名和手机号码纵向对齐.. 第一种方法: 在姓和名之间加空格, 但是如果用键盘的空格会在一些机型上对齐.一些机型上不对齐. \u3000是全角空格: \u0020是半角空格,效果跟在英文输入法下直接敲键盘空格一样. 这里要用全角空格, 占位一个汉字. <TextView android:layout_width="wrap_content" a
-
Android自定义textview实现竖直滚动跑马灯效果
本文实例为大家分享了Android自定义textview实现跑马灯效果的具体代码,供大家参考,具体内容如下 xml布局 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.c
-
Android UI中TextView的使用方法
Android UI中TextView的使用方法 一.TextView不同区域设置颜色,大小.点击事件 String msg = getResources().getString(R.string.school_roll_auth); SpannableStringBuilder style = new SpannableStringBuilder(msg); // 设置字体颜色 style.setSpan( new ForegroundColorSpan(getResources().getC
-
Android TextView 去掉自适应默认的fontpadding的实现方法
Android TextView 去掉自适应默认的fontpadding的实现方法 最近在项目中使用textview时发现在使用Android:layout_height="wrap_content"这个属性设置后,textview会有默认的padding,也就是fontpadding.这样就会造成textview和其他view中间的间距会比自己的设置的大.那么我们怎么来remove掉这个间距呢? 第一.先试试设置includefontpadding=false ,如果不能达到目的的
-
Android中TextView显示圆圈背景或设置圆角的方法
前言 在我们学习android这么久,而且使用TextView那么长时间,我们一直没有用过给TextView添加背景,或者是给TextView添加添加边框,以及怎么样设置TextView的形状.今天在写代码的时候就用到了,怎么在java代码部分设置TextView的背景,和TextView的形状及边框. 方法如下: 接下来我们来看一下,怎么在Java代码部分怎么设置TextView的背景颜色,其实很简单的就一句话. tvTemp.setBackgroundColor(Color.parseCol
-
Android中TextView显示插入的图片实现方法
本文实例讲述了Android中TextView显示插入的图片实现方法.分享给大家供大家参考,具体如下: Android系统默认给TextView插入图片提供了三种方式: 1.ImageSpan 2.Html.ImageGetter 3.TextView.setCompoundDrawables(left, top, right, bottom) 1.TextView使用ImageSpan显示图片 ImageSpan span = new ImageSpan(this, R.drawable.ic
-
Android中TextView动态设置缩进距离的方法
需求是需要在TextView前端加入一个标签展示. 最终效果图如下: 根据效果图,很容易就能想到使用SpannableStringBuilder,在这里使用到的就是LeadingMarginSpan这个类了. 官方说明: A paragraph style affecting the leading margin. There can be multiple leading margin spans on a single paragraph; they will be rendered in
-
Android 中TabLayout自定义选择背景滑块的实例代码
TabLayout是Android 的Material Design包中的一个控件,可以和V4包中的ViewPager搭配产生一个联动的效果.这里我自定义了一个滑块能够跟随TabLayout进行滑动选择的SliderLayout.效果见下图(白色方框): 下面是SliderLayout的源码: import android.content.Context; import android.content.res.TypedArray; import android.graphics.drawabl
-
Android 中TextView的使用imageview被压缩问题解决办法
Android 中TextView的使用imageview被压缩问题解决办法 看下运行效果图: 今天解bug的时候遇到一个奇怪的问题:listview的item由一个textview和一个imageview组成,父布局是线性水平排列.我的本意是imageview显示相同的图片,textview显示文本,但是运行程序后发现,当某个textview的文本较多时,imageview会被压缩,刚开始没注意,检查代码了好久. 代码示例如下: <!--文本少的item--> <LinearLayou
-
Android中TextView局部变色功能实现
在做项目的时候,遇到过一行文字有两种颜色.在菜鸟的时候直接会想到用多个TextView来实现.后来自己学的多了就找到了更为简单的方法了. 直接上代码: 方法一: xml代码片段: <TextView android:id="@+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" /> Java代码片段: TextView tv=
-
Android中TextView实现垂直滚动和上下滚动效果
布局里面就是两个自定义的TextView,上面的左右滑动的是AutoHorizontalScrollTextView; 下面上下滚动的是AutoVerticalScrollTextView; 上面左右滑动的非常好实现,直接把AutoHorizontalScrollTextView复制到项目中,复制全类名到布局文件中,和系统TextView一样,只需设置文本其他什么都不用设置: 下面垂直滚动的AutoVerticalScrollTextView相比AutoHorizontalScrollTextV
-
Android中EditText显示明文与密码的两种方式
效果图如下所述: 布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pa
-
Android中AlertDilog显示简单和复杂列表的方法
本文实例讲述了Android中AlertDialog显示简单和复杂列表的方法.分享给大家供大家参考,具体如下: AlertDialog 显示简单列表 setItems import Android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.os.Handler; import andro
随机推荐
- Angular X中使用ngrx的方法详解(附源码)
- js中鼠标滚轮事件详解(firefox多浏览器)
- Lua面向对象编程之类的简单实现方式
- angularJS与bootstrap结合实现动态加载弹出提示内容
- 使用asp.net mvc,boostrap及knockout.js开发微信自定义菜单编辑工具(推荐)
- php strtotime 函数UNIX时间戳
- ThinkPHP3.1数据CURD操作快速入门
- python魔法方法-属性访问控制详解
- C#开发Windows服务实例之实现禁止QQ运行
- 常见表单重复提交问题整理及解决方法
- JavaScript通过Date-Mask将日期转换成字符串的方法
- 阿里云ecs服务器 修改php上传最大限制的方法
- Jquery ui css framework
- JS location几个方法小姐
- Android中Serializable和Parcelable序列化对象详解
- Spring MVC学习教程之RequestMappingHandlerMapping匹配
- Android中EditText setText方法的踩坑实战
- python获取txt文件词向量过程详解
- VScode格式化ESlint方法(最全最好用方法)
- tomcat启动报错:java.util.zip.ZipException的解决方法