码农知识堂 - 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

  • 相关阅读:
    C++——pair用法总结
    物联网手势控制小车所遇问题与解决方案
    R语言ggplot2可视化:使用ggpubr包的ggsummarytable函数可视化dataframe数据的描述性统计量
    【三维目标检测】3DSSD(一)
    HDCP@SKE交互
    NIO教程
    CentOS7 安装 mysql8
    Spring Data访问Elasticsearch(一)----Elasticsearch客户端
    2022年全球6家最具技术实力的的智能合约审计公司盘点
    武汉理工大学 Python程序设计第八章测验
  • 原文地址:https://blog.csdn.net/zhangphil/article/details/133346170
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号