码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Android改造CardView为圆形View,Kotlin


    Android改造CardView为圆形View,Kotlin

    可以利用androidx.cardview.widget.CardView的cardCornerRadius特性,将CardView改造成一个圆形的View,技术实现的关键首先设定CardView为一个宽高相等的View(正方形),然后将radius特意设置成宽度(或高度,一样,因为正方形,宽高相等)的1/2,此时CardView自然就变成一个圆。

    (1)kotlin代码运行时生成:

    1. import android.content.Context
    2. import android.graphics.Color
    3. import android.os.Bundle
    4. import androidx.appcompat.app.AppCompatActivity
    5. import androidx.cardview.widget.CardView
    6. class MainActivity : AppCompatActivity() {
    7. override fun onCreate(savedInstanceState: Bundle?) {
    8. super.onCreate(savedInstanceState)
    9. val circularCardView = CircularCardView(this)
    10. circularCardView.setCardBackgroundColor(Color.BLUE)
    11. setContentView(circularCardView)
    12. }
    13. }
    14. class CircularCardView(ctx: Context) : CardView(ctx) {
    15. override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
    16. super.onMeasure(widthMeasureSpec, heightMeasureSpec)
    17. val width = measuredWidth
    18. setMeasuredDimension(width, width)
    19. radius = (width / 2).toFloat()
    20. }
    21. }

    (2)在xml布局中实现:

    1. "1.0" encoding="utf-8"?>
    2. <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    3. xmlns:app="http://schemas.android.com/apk/res-auto"
    4. android:layout_width="match_parent"
    5. android:layout_height="match_parent">
    6. <androidx.cardview.widget.CardView
    7. android:layout_width="200dp"
    8. android:layout_height="200dp"
    9. app:cardBackgroundColor="@android:color/holo_orange_light"
    10. app:cardCornerRadius="100dp"
    11. app:layout_constraintBottom_toBottomOf="parent"
    12. app:layout_constraintEnd_toEndOf="parent"
    13. app:layout_constraintStart_toStartOf="parent"
    14. app:layout_constraintTop_toTopOf="parent">
    15. androidx.cardview.widget.CardView>
    16. androidx.constraintlayout.widget.ConstraintLayout>

    Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案_android 官方圆角-CSDN博客Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案RoundedBitmapDrawable是Android在support v4的扩展包中新增的实现圆角图形的关键类,借助RoundedBitmapDrawable的帮助,可以轻松的以Android标准方式实现圆角图形图象。写一个简单的例子。写一个线性布局,竖直方向放三个Im_android 官方圆角https://blog.csdn.net/zhangphil/article/details/51829650Android CardView设置成普通的Framelayout-CSDN博客比如可以这样写代码,CardView就变成普通的FrameLayout:https://blog.csdn.net/zhangphil/article/details/52911922

  • 相关阅读:
    论文生成器(论文、文献综述、开题报告……),Java、Python、C++
    java毕业设计校园互助平台校园帮帮网站源码+lw文档+mybatis+系统+mysql数据库+调试
    Java HashSet详解
    LeetCode 005:最长回文子串
    【商鼎云更新】你想要的相册备份功能,已经安排上了​
    Nuxt3 移动端判断
    数据在内存中的存储
    python_argparse模块的使用
    什么是函数库和动态链接库?
    HX3001升压IC芯片-Synchronous Boost DC/DC Regulator
  • 原文地址:https://blog.csdn.net/zhangphil/article/details/133346170
  • 最新文章
  • 你的Agent API还在裸奔?从认证到沙箱,我用FastAPI搭了几道防线
    13、PushbackInputStream和StreamTokenizer的源码分析和使用方法详细分析
    上周热点回顾(5.11-5.17)
    .NET 8 Web开发入门(五):构建盾牌——数据验证与全局异常处理
    [深度学习] 大模型学习8上-推理部署框架llama.cpp与Ollama使用指北
    架构融合:Activity Host 作为确定性编排与认知智能代理的桥梁
    图生视频模型训练数据集
    为什么 AI 助理总不好用?因为它不知道你发生了什么!
    ERC-7730:解析签名意图,消除盲签风险
    RAG学习笔记(2):关于rag和模型微调,同一个问题它们分别怎么处理
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号