android:绘制圆角矩形,椭圆形

这篇具有很好参考价值的文章主要介绍了android:绘制圆角矩形,椭圆形。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言:在我们工作中会有绘制不同圆角的按钮图形,具体该怎么做之前也只是了解个大概,今天看了一节课,听完老师讲的我自己又写了一遍,记录一下。

二、代码展示:

首先先创建一个DrawableShapeActivity

public class DrawaleShapeActivity extends AppCompatActivity implements View.OnClickListener {

    private View v_content;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_drawale_shape);
        v_content = findViewById(R.id.v_content);
        findViewById(R.id.btn_ract).setOnClickListener(this);
        findViewById(R.id.btn_oval).setOnClickListener(this);
        //把v_conten背景设置成圆角矩形
        v_content.setBackgroundResource(R.drawable.shape_ract_gold);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btn_ract:
                v_content.setBackgroundResource(R.drawable.shape_ract_gold);
                break;
            case R.id.btn_oval:
                v_content.setBackgroundResource(R.drawable.shape_oval_rose);
                break;
        }
    }
}

相对应的xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <View
        android:id="@+id/v_content"
        android:layout_width="match_parent"
        android:layout_height="200dp"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <Button
            android:id="@+id/btn_ract"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="圆角矩形背景"/>
        <Button
            android:id="@+id/btn_oval"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="椭圆背景"/>
    </LinearLayout>

</LinearLayout>

以及两个形状xml:shape_oval_rose.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <!--指定了形状内部的填充颜色-->
    <solid android:color="#ff66aa" />
    <!--指定了形状轮廓的粗细与颜色-->
    <stroke android:width="1dp"
        android:color="#aaaaaa"/>
</shape>

shape_ract_gold.xml文章来源地址https://www.toymoban.com/news/detail-740084.html

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <!--指定了形状内部的填充颜色-->
    <solid android:color="#ffdd66"/>
    <!--指定了形状轮廓的粗细与颜色-->
    <stroke android:width="1dp"
        android:color="#aaaaaa"/>
    <!--指定了形状四个圆角半径-->
    <corners android:radius="10dp"/>
</shape>

到了这里,关于android:绘制圆角矩形,椭圆形的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • NSBezierPath绘制圆角矩形的圆角不够圆滑?

    在Macos应用开发过程中,使用OC语言编码,效果是:圆角的线宽 比 边框的 大或者浓。 经过大量查询,发现:如果圆角矩形宽高和View的宽高一样大,就导致圆角矩形的边框线有一半在View外面而被裁剪。 调整后的代码如下: 参考链接: https://outofmemory.cn/web/1018338.html     htt

    2024年02月10日
    浏览(26)
  • 使用unity绘制扇形,圆形和矩形区域

    使用unity绘制扇形.圆形和矩形区域: 效果如图: 扇形  矩形  圆形  下面是代码: 1.首先我们需要给对应的组件添加一个LineRenderer组件并获得他 2.编写方法: 1.扇形 其中 positionCount 之所以需要+2 是因为除了我们需要的角度外 还需要额外绘制2条回归线所以直接通过代码的方式设置

    2024年02月15日
    浏览(38)
  • Qt之QPainter绘制多个矩形/圆形(含源码+注释)

    下图绘制的是矩形对象,但是将绘制矩形函数(drawRect)更改为绘制圆形(drawEllipse)即可绘制圆形。 绘制矩形需要自然要获取矩形数据,因此通过鼠标事件获取每个矩形的rect数据(鼠标按下为起始点,鼠标释放为结束点;每次移动时的当前位置做结束点,并实时刷新,实现

    2023年04月25日
    浏览(92)
  • Opencv(C++)笔记--绘制直线、矩形、椭圆、圆、填充多边形、绘制字体和随机产生坐标点

    目录 1--cv::line()绘制直线 2--cv::Rect()绘制矩形 3--cv::ellipse()绘制椭圆 4--cv::circle()绘制圆 5--cv::fillPoly()填充多边形 6--cv::putText()绘制字体 6--cv::RNG随机产生坐标点 使用 cv::Point p1 定义坐标点; 使用 cv::line() 绘制直线,传入的参数依次为:背景图、两个点的坐标、直线的颜色、直线

    2024年02月14日
    浏览(38)
  • Android使用shape属性绘制边框内渐变色

    这是使用AndroidStudio绘制的带有渐变色的边框背景色 项目中由于UI设计需求,需要给按钮、控件设置带有背景色效果的。以下是UI效果图。 这里我们使用shape属性来绘制背景效果。 Shape可以定义控件的一些展示效果,例如圆角,渐变,填充,描边,大小,边距;shape子标签就可

    2024年04月13日
    浏览(26)
  • Android OpenGL 教程——窗口初始化&绘制矩形

    上节介绍了 Native 工程初始化,但是我们的窗口什么都没有,这节我们将 NativeActivity 创建的 window 绑定到 OpenGL 创建的 display 的 surface 上,并且绘制背景颜色和三角形,通过三角形绘制出一个矩形 初始化 绘制  只需要将三角形的索引改为6个即可 绘制 源码:OpenGLDemo#triangle 你

    2024年02月16日
    浏览(33)
  • Android Canvas图层saveLayer剪切clipPath原图addCircle绘制对应圆形区域,Kotlin(2)

    在 Android Canvas图层saveLayer剪切clipRect原图对应Rect区域,Kotlin(1)-CSDN博客 的基础上,把矩形切图,换成圆形。             在文章1: https://zhangphil.blog.csdn.net/article/details/135297013 基础上,把剪切的区域从矩形Rect变为圆形的Path,当手指在上面的ImageView移动时候,下面同等大

    2024年02月02日
    浏览(30)
  • css不规则圆角矩形

    这个收集的css 效果是真的多 https://github.com/chokcoco/iCSS强烈推荐

    2024年02月20日
    浏览(32)
  • 在 Flutter 中创建圆角图像和圆形图像有多少种方法?

    使用 Container 、 ClipRRect 、 CircleAvatar 、 Card 和 PhysicalModel 实现具有视觉吸引力的图像效果。 在 Flutter 应用 UI 设计中,圆形图像是常见的视觉元素。本博客探讨了使用不同技术实现圆形图像效果的各种方法。无论是使用网络图像、本地文件还是资源,这些方法都可以灵活地创

    2024年02月02日
    浏览(24)
  • 【技术碎片】【Java】计算椭圆的外接矩形坐标

    遇到一个需要计算一般椭圆(斜椭圆)的外接矩形坐标的问题,在此记录一下 已知椭圆的中心点坐标centerX centerY,椭圆的长轴,短轴majorRadius minorRadius,和旋转角度 angle。 按理说java有原生的计算外接矩形的函数,先看看 java.awt.geom 怎么实现的。 注:java.awt.geom 是 Java 2D 图形

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包