怎么把一个textview的背景图片设置成圆角的?
怎么把一个textview的背景图片设置成圆角的?有什么直接的办法吗?还是要进行背景图片的修改?求代码...
怎么把一个textview的背景图片设置成圆角的?有什么直接的办法吗?还是要进行背景图片的修改?求代码
展开
2个回答
展开全部
在drawable文件夹下新建一个文件设置背景样式
代码:
在drawable文件夹下面新建text_view_border.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#80858175" />
<stroke android:width="1dip" android:color="#aea594" />
<corners android:topleftradius="2dp"
android:toprightradius="2dp"
android:bottomrightradius="2dp"
android:bottomleftradius="2dp"/>
</shape>
在布局文件调用:
<textview
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/text_view_border" />
在类文件中调用:
tv.setbackgroundresource(r.drawable.text_view_border);
分析:
solid设置填充颜色,颜色值以#80开头表示透明
stroke 设置边框宽度,颜色值
corners设置圆角
代码:
在drawable文件夹下面新建text_view_border.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#80858175" />
<stroke android:width="1dip" android:color="#aea594" />
<corners android:topleftradius="2dp"
android:toprightradius="2dp"
android:bottomrightradius="2dp"
android:bottomleftradius="2dp"/>
</shape>
在布局文件调用:
<textview
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/text_view_border" />
在类文件中调用:
tv.setbackgroundresource(r.drawable.text_view_border);
分析:
solid设置填充颜色,颜色值以#80开头表示透明
stroke 设置边框宽度,颜色值
corners设置圆角
展开全部
先把这个图片转成bitmap,然后把这个bitmap转成圆角Bitmap,然后把这个圆角bitmap设置成textview的背景,下面是相应的代码,希望对你能有帮助,不用谢了public static Bitmap getRoundedCornerBitmap(Bitmap bitmap,int roundPixelSize) { Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); Canvas canvas = new Canvas(output); final Paint paint = new Paint(); final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); final RectF rectF = new RectF(rect); final float roundPx = roundPixelSize; paint.setAntiAlias(true); canvas.drawRoundRect(rectF,roundPx,roundPx, paint); paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); canvas.drawBitmap(bitmap, rect, rect, paint); return output; } 查看原帖>>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |