当前位置: 首页 > news >正文

圆角矩形“RoundRectShape”使用详解

圆角矩形 常用作一些组件的背景

构造函数:

RoundRectShape(float[] outerRadii, RectF inset, float[] innerRadii)

 Specifies an outer (round)rect and an optional inner (round)rect.// 指定一个外部(圆角)矩形 和 一个 可选的 内部(圆角)矩形。

Parameters:

   outerRadii 

  An array of 8 radius values, for the outer roundrect. The first two floats are for the top-left corner (remaining pairs correspond clockwise). For no rounded corners on the outer
rectangle, pass null.

//一个包含8个弧度值,指定外部圆角矩形的 4个角部的弧度及 :new float[] {l, l, t, t, r, r, b, b};

// 前2个 左上角, 3 4 , 右上角, 56, 右下, 78 ,左下,如果没弧度的话,传入null即可。

   inset 

A RectF that specifies the distance from the inner rect to each side of the outer rect. For no inner, pass null.

//指定外部矩形4条边 与内部矩形的4条边的个距离,也用RectF的方式指定。

   innerRadii 

An array of 8 radius values, for the inner roundrect. The first two floats are for the top-left corner (remaining pairs correspond clockwise). For no rounded corners on
the inner rectangle, pass null. If inset parameter is null, this parameter is ignored. 

//同第一个参数。

例子如下:

package com.example.testroundrectshape;

import android.app.Activity;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RoundRectShape;
import android.os.Bundle;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		TextView test = (TextView) findViewById(R.id.test);
		// 外部矩形弧度
		float[] outerR = new float[] { 8, 8, 8, 8, 8, 8, 8, 8 };
		// 内部矩形与外部矩形的距离
		RectF inset = new RectF(100, 100, 50, 50);
		// 内部矩形弧度
		float[] innerRadii = new float[] { 20, 20, 20, 20, 20, 20, 20, 20 };
		
		RoundRectShape rr = new RoundRectShape(outerR, inset, null);
		ShapeDrawable drawable = new ShapeDrawable(rr);
		//指定填充颜色
		drawable.getPaint().setColor(Color.YELLOW);
		// 指定填充模式
		drawable.getPaint().setStyle(Paint.Style.FILL);

		test.setBackgroundDrawable(drawable);

	}
}

 

效果图:

 

转载于:https://www.cnblogs.com/yaowen/p/5438984.html

相关文章:

  • Javascript异步编程的4种方法
  • [APIO2015]巴厘岛的雕塑
  • HTTP原理
  • javascript中利用柯里化函数实现bind方法
  • theano和keras使用过程中遇到的一些问题记录
  • 20145228《Java程序设计》第九周学习总结
  • Atitit.redis操作总结
  • Java数组技巧攻略
  • Java编程思想读书笔记之内部类
  • 2、变量var关键字
  • 基于CkEditor实现.net在线开发之路(5)列表页面开发
  • 大致相同功能和代码是分开两个源代码,还是保持一个代码
  • Java--------------Windows下Redis的安装使用
  • onethink对二维数组结果集进行排序
  • 地图处理之基本使用汇总
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 【知识碎片】第三方登录弹窗效果
  • 2018一半小结一波
  • canvas 绘制双线技巧
  • canvas 五子棋游戏
  • gf框架之分页模块(五) - 自定义分页
  • interface和setter,getter
  • PHP 的 SAPI 是个什么东西
  • Vue 2.3、2.4 知识点小结
  • 精彩代码 vue.js
  • 前端_面试
  • 前端存储 - localStorage
  • 前言-如何学习区块链
  • 用element的upload组件实现多图片上传和压缩
  • 由插件封装引出的一丢丢思考
  • postgresql行列转换函数
  • 阿里云API、SDK和CLI应用实践方案
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • #Lua:Lua调用C++生成的DLL库
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (定时器/计数器)中断系统(详解与使用)
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (四)Linux Shell编程——输入输出重定向
  • (一)Java算法:二分查找
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • (转)nsfocus-绿盟科技笔试题目
  • (转)Unity3DUnity3D在android下调试
  • (转载)Linux网络编程入门
  • ../depcomp: line 571: exec: g++: not found
  • .gitignore文件设置了忽略但不生效
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .net 验证控件和javaScript的冲突问题
  • .NET开源项目介绍及资源推荐:数据持久层
  • ??javascript里的变量问题
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构