详解Android中Shape的用法

Zemax操作33--5倍激光扩束器 5倍扩束 阅读详情

工作中总是会用到shape去画一些背景,每次都要去百度,但是很多都写的很模糊或者属性不是很全,所以今天自己总结了一下,给大家分享一下,自己以后也可以看。

ShapeDrawable是一种很常见的Drawable,可以理解为通过颜色来构造的图形,它既可以是纯色的图形,也可以是具有渐变效果的图形,ShapeDrawabled语法稍显复杂,如下所示:

<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape=["rectangle" | "oval" | "line" | "ring"] >
    <corners
        android:radius="integer"
        android:topLeftRadius="integer"
        android:topRightRadius="integer"
        android:bottomLeftRadius="integer"
        android:bottomRightRadius="integer" />
    <gradient
        android:angle="integer"
        android:centerX="integer"
        android:centerY="integer"
        android:centerColor="integer"
        android:endColor="color"
        android:gradientRadius="integer"
        android:startColor="color"
        android:type=["linear" | "radial" | "sweep"]
        android:useLevel=["true" | "false"] />
    <padding
        android:left="integer"
        android:top="integer"
        android:right="integer"
        android:bottom="integer" />
    <size
        android:width="integer"
        android:height="integer" />
    <solid
        android:color="color" />
    <stroke
        android:width="integer"
        android:color="color"
        android:dashWidth="integer"
        android:dashGap="integer" />
</shape>
  • Android: shape
  • 有4个选项,rectangle(矩形)oval(椭圆)line(横线)ring(圆环),默认为rectangle,需要注意line和ring需要通过标签来指定线的宽度和颜色等信息,否则无法达到预期效果
  • 首先来说一下最常用的rectangle(矩形),一般都是在按钮或者字体上面设置一个background的Drawable。一般设置效果为正方形或者两边有弧度的形状。
    • 第一种情况就是设置矩形背景
    • <shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle"
      >
      <size
      android:width="200dp"
      android:height="20dp"
      />
      <solid android:color="#d22121"/>
      </shape>

      通过设置size设置矩形的宽度和高度,*这里需要说明一下,咱们在这里设置size的宽高,在最终显示尺寸是没有用的,也就是说当你在一个控件中设置background的时候,这个shape是会被拉伸或者缩小为view的大小。*solid属性设置矩形里面的背景颜色。
      这里写图片描述
    • 将背景色设置为渐变<shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle"
      >
      <size
      android:width="200dp"
      android:height="20dp"
      />
      <gradient
      android:startColor="#fff"
      android:centerColor="#f1a9a9"
      android:endColor="#ec5b5b"
      android:type="linear"
      />
      </shape>
    • 效果图这里写图片描述
    • 这里默认的type就是linear,里面还有其他两个属性可以选择分别是radial(径向渐变)和sweep(扫描渐变)
      一般最常用的也就是线性渐变还有其他几个属性没有用但是很好理解
      android:angle——渐变的角度,默认为0,其值必须是45的倍数,0表示从左到右,90表示从下到上。
      android:centerX——渐变的中心点横坐标
      android:centerY——渐变的中心点纵坐标
      android:gradientRadiu——渐变半径,仅当android:type=”radial”时有效
  • 接下来说一下画圆角的矩形背景
    • 其实只用设置一下corners的属性就是了。
    • 这里写图片描述
    • 具体详细的说明
    • android:radius—— 给四个角设置相同的角度,优先级较低,会被其他四个属性覆盖
      android:bottomLeftRadius——设定左下角的角度
      android:bottomRightRadius——设定右下角的角度
      android:TopLeftRadius——设定左上角的角度
      android:TopRightRadius——设定右上角的角度
  • 接下来就是如何画一个空心的背景
    • <shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle"
      >
      <size
      android:width="200dp"
      android:height="20dp"
      />
      <stroke
      android:width="1px"
      android:color="#ffff1c77"
      />
      <corners android:radius="50dp"/>
      </shape>

      效果图如下这里写图片描述
      当然里面也可以自由发挥设置渐变色,但是一般里面都纯色。
    • 这里里面也可以设置为虚线<shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle"
      >
      <size
      android:width="200dp"
      android:height="20dp"
      />
      <stroke
      android:dashWidth="4dp"
      android:dashGap="2dp"
      android:width="1px"
      android:color="#ffff1c77"
      />
      <corners android:radius="50dp"/>
      </shape>
    • 效果图这里写图片描述

好了,其实里面的东西很简单,总结一下就好了。希望大家用的开心。

SpotBugs使用 spotbugs命令行参数解析 阅读详情

相关推荐

遥感常用相关指数和计算方法(植被指数/水体指数/雪和冰指数/矿物指数/地表温度指数/云和阴影指数/农业指数)

遥感常用相关指数和计算方法(植被指数/水体指数/雪和冰指数/矿物指数/地表温度指数/云和阴影指数/农业指数)

m0_64361769的博客 1万+

Android样式之shape标签(基础)

shape

QG 4034

虚拟机扩容——非LVM分区

虚拟机扩容——非LVM分区

ytraister的博客 3905

Android入门之路 - shape保姆级手册

使用方式: 1.在res - drawable - 创建文件(一般为Shape开头) 2.文件内部shape为最外层标签,可设置当前的shape形状,有圆形,长方形,环形,线形 3.内部6种子条目标签,要熟悉掌握,长方形同时可实现圆化MainActivity :package com.yl.shape.shapedemo;import android.content.Intent; impor

Android、前端、小程序、后端 4669

从零开始:用Kimi API和LangChain打造智能写作助手

本文详细介绍了如何从零开始,利用Kimi API提供的强大AI大模型能力,结合LangChain框架构建一个智能写作助手。通过实战演示了环境搭建、核心写作链构建、以及引入检索增强生成和智能体等进阶功能,旨在解决长文档创作、事实准确性等痛点,打造一个能理解意图、调用工具并保持记忆的智能创作伙伴。

weixin_29294395的博客 139

Stata面板数据OLS回归分析实战指南

OLS回归作为计量经济学的核心分析方法,通过最小化残差平方和实现参数估计,广泛应用于经济学实证研究。其技术价值在于模型简洁、结果易于解释,特别适合处理面板数据中的复杂关系。在实际应用中,配合robust标准误能有效解决异方差问题,而固定效应模型则可控制个体特异性。本文以Stata软件为例,详细演示从数据导入、描述性统计到混合OLS和固定效应模型构建的全流程,重点解析面板数据特有的格式设定、模型选择标准以及结果呈现技巧,为经济学研究者提供可直接复用的分析框架。

weixin_29051811的博客 268

Android shape的用法详解

一、什么是Shape属性 在项目中经常会给控件定义背景,有时候有些界面可以叫UI做好,但如何显示的更加的贴近用户,则需要我们客户端去优化。 如果在设置背景Android:background=“图片、颜色”,设置单一的属性并不能带来更好的体验。我们此时就可以使用shape属性作为控件的背景。 shape怎么弄? 1. 在res/drawable下新建一个xml文件; 2. 在代码中引用这个xml文件,引用方式和图片一样。 shape有哪些功能? corners ———-圆角 gradi

Android 领域开发程序员,希望通过写博客的方式不断的总结提升自己,大家共同进步哦! 5787

6.5 构网型储能系统的协同控制策略

本文系统阐述了构网型储能系统的协同控制策略,重点分析了多机组群协同运行面临的功率分配不均、动态响应失配等挑战。研究提出了改进型下垂控制与虚拟阻抗法、基于一致性算法的分布式协同控制等解决方案,探讨了构网型储能与同步发电机在惯性响应、一次调频等方面的协同机制,以及与跟网型电源在电压支撑、阻抗重塑等方面的互补作用。文章构建了分层控制架构,为实现多类型电源的全局优化运行提供了技术路径,对提升高比例新能源电力系统的稳定性具有重要意义。

技术工作者 1005

Android给控件自定义边框和阴影

所谓添加阴影,就是两个画布从重叠,上方的画布小于下方的画布,阴影颜色为下方的画布的颜色。 item 中shape 的属性 (rectangle:矩形;line:线性;oval:椭圆;ring:环形),默认为矩形    corners    //设置圆角幅度,必须是在shape=rectangle的时候,corners才有效                 corners   

木神不木的博客 1万+

PCL RANSAC拟合空间圆【2026最新版】

RANSAC三维点云空间3D圆拟合。博客长期更新,本文最新更新时间为:2026年4月13日。代码在PCL1.15.0中测试通过

点云侠的博客 7455

【Unity 实用工具篇】✨| 受击插件Feel 详细教程,开发游戏时更好的操控 游戏打击感

在一个游戏中,游戏手感对于游戏的整体游玩体验是非常重要的,而游戏手感中有一个很重要的点:打击感 那本篇文章就来讲一下打击感中的受击反馈部分。 在游戏中经常会用到攻击敌人,敌人扣血,执行某些受击功能的执行,尤其是对于有战斗场景的游戏来说,这就是标准的受击反馈。 所以引出本篇文章的主角:受击插件 Feel 的使用,2D和3D游戏都可以使用。

努力前行,总会成为自己心中的那道光 3万+

Android程序Shape使用总结!

在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状。首先我们了解一下Shape下面有哪些标签,都代表什么意思:solid:填充 android:color指定填充的颜色gradient:渐变 android:startColor和android:endColor分别为起始和结束颜色,android:angle是渐变角度,必须为45的整数倍。另外渐变默认的模式为android:type=“linear”,即线性渐变,

huahaiyi的博客 4434

YOLO26涨点改进 | 独家创新,注意力改进篇 | AAAI 2025 | YOLO26引入 DRM 防御优化模块,进行特征优化/特征增强,助力目标检测、图像分类、图像分割有效涨点

本文提出了一种基于DRM防御优化模块改进的YOLO26网络模型,显著提升了目标检测的鲁棒性和特征提取能力。DRM模块通过优化特征提取过程、增强抗噪声能力和补充细节信息,有效提高了模型在复杂场景下的检测精度和定位准确度。该模块可集成于UNet等主干网络,采用Transformer结构实现特征精炼,在对抗攻击环境下仍能保持稳定的融合效果。实验表明,改进后的模型在红外与可见光图像融合任务中表现出色,同时提升了下游任务性能。文章详细介绍了DRM模块的结构、作用机制及实现代码,并提供了两种YOLO26改进方案.

Ai缝合怪、助力小伙伴高效发论文 145

Android中shape的用法详解

用代码生成图片,而且图片能随意的更改,既方便又节省空间,下面就介绍用shape生成自定义图形的方法 步骤: 1. 在res/drawable下新建一个xml文件; 2. 在代码中引用这个xml文件,引用方式和图片一样。 shape drawable xml文件中定义的一个几何图形,定义在res/drawable/目录下,文件名filename称为访问的资源ID 在代码中通

Justin2107的专栏 2万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Android Shape 用法详解

Android Shape 用法详解 在Android开发中,使用shape可以很方便的帮我们画出想要的背景,相对于png图片来说,使用shape可以减少安装包的大小,而且能够更好的适配不同的手机。 使用 先贴出官网上的说明: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=[

Jon.Lo 的专栏 596

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

android shape 模糊,详解Android中Shape的用法

工作中总是会用到shape去画一些背景,每次都要去百度,但是很多都写的很模糊或者属性不是很全,所以今天自己总结了一下,给大家分享一下,自己以后也可以看。ShapeDrawable是一种很常见的Drawable,可以理解为通过颜色来构造的图形,它既可以是纯色的图形,也可以是具有渐变效果的图形,ShapeDrawabled语法稍显复杂,如下所示:xmlns:android="http://schema...

weixin_29798981的博客 1400

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

android shape java_android开发中shape用法实例详解

用代码生成图片,而且图片能随意的更改,既方便又节省空间,下面就介绍用shape生成自定义图形的方法步骤:1. 在res/drawable下新建一个xml文件;2. 在代码中引用这个xml文件,引用方式和图片一样。定义shape图形的语法如下:xmlns:android="http://schemas.android.com/apk/res/android"android:shape=["recta...

weixin_28931507的博客 359

Android shape 用法详解

本文转自 http://kofi1122.blog.51cto.com/2815761/521605 本人在美工方面一直是比较白痴的,对于一些颜色什么乱七八糟的非常头痛,但是在Android编程中这又是经常涉及到的东西,没办法,只有硬着头皮上。 Android中常常使用shape来定义控件的一些显示属性,今天看了一些shape的使用,对shape有了大体的了解,稍作总结:

chinese_zhang的专栏 572

android shape各标签用法详解

sharp这个东西之前用的比较少,用的时候也都是网上找现成的,现在为止对它的各个标签的作用还是比较陌生,在网上读到一篇讲解的很详细的文章,转过来以后忘记了再来看。 sharp实例: &lt;shape&gt; &lt;!-- 实心 --&gt; &lt;solid android:color="#ff9d77"/&gt; ...

欢迎进入JesseAndroid的博客 1268

android shap,Android中Shape的用法详解

ShapeDrawable是一种很常见的Drawable,可以理解为通过颜色来构造的图形,它既可以是纯色的图形,也可以是具有渐变效果的图形,ShapeDrawabled语法稍显复杂,如下所示:xmlns:android="http://schemas.android.com/apk/res/android"android:shape=["rectangle" | "oval" | "line" |...

weixin_32380307的博客 731

android selector作用,实例详解Android Selector和Shape的用法

shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。1:Selectordrawable的item中可以有以下属性:android:drawable="@[package:]drawable/drawab...

weixin_35923682的博客 406

Android篇——Android: 关于圆角等异形图片/按钮的控件(google发布的官方库)

Android: 关于圆角等异形图片/按钮的控件(google发布的官方库)

u011391361的博客 732

Android开发 GradientDrawable详解

Android开发 GradientDrawable详解

Android23333的博客 3158
上一篇: 解决ListView复用的乱码问题
下一篇: Sublime 配置 Python 开发环境
Code_legend
博客等级 码龄10年 33粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值