• View 自定义 - 坐标系、位置获取


    一、坐标系

    屏幕的左上角为坐标原点,向右为x轴正向,向下为y轴正向。

    二、角度 Angle

    注意:区别于一般的数学坐标系。

    三、弧度 Radian

    角度和弧度都是描述角的一种度量单位

    四、位置描述

    子组件到父容器距离getLeft()自身左边到父容器左边距离。
    getRight()自身右边到父容器左边距离。
    getTop()自身上边到父容器顶部距离。
    getBottom()自身底部到父容器顶部距离。
    子组件自身宽高getWidth()自身宽度,等同于 getRight() - getLeft()
    getHeight()自身高度,等同于 getBottom() - getTop()
    触摸点到屏幕距离getRawX()触摸点到屏幕的x轴距离。
    getRawY()触摸点到屏幕的y轴距离。

    五、颜色 Color

    5.1 定义颜色

    5.1.1 xml中定义

    res → values → colors.xml

    1. "1.0" encoding="utf-8"?>
    2. <resources>
    3. //红色
    4. <color name="red">#FFFF0000color>
    5. <color name="red50">#80FF0000color>
    6. //蓝色
    7. <color name="blue">#FF0000FFcolor>
    8. <color name="blue50">#800000FFcolor>
    9. //黑色
    10. <color name="black">#FF000000color>
    11. <color name="black50">#80000000color>
    12. //白色
    13. <color name="white">#FFFFFFFFcolor>
    14. <color name="white50">#80FFFFFFcolor>
    15. //透明
    16. <color name="transparent">#00FFFFFFcolor>
    17. resources>

    5.1.2 代码中定义

    1. val color1 = Color(0xFFFFFFff)
    2. val color2 = Color(red = 127, green = 255, blue = 0, alpha = 0)
    3. val color3 = Color.Black

    5.2 引用颜色

    5.2.1 xml中引用

    1. //在style文件中引用
    2. <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    3. <item name="colorPrimary">@color/reditem>
    4. style>
    5. //在layout文件中引用
    6. <TextView>
    7. android:background="@color/red"
    8. TextView>
    9. //在layout文件中创建并使用颜色
    10. <TextView>
    11. android:background="#ff0000"
    12. TextView>

    5.2.2 代码中引用

    1. val color1 = resources.getColor(R.color.white, null)
    2. val color2 = getColor(R.color.white) //API 23+

  • 相关阅读:
    Linux中make命令和makefile文件的编写,最后附完整代码。
    Android adb shell svc 知识详解
    面试官:今天要不来聊聊SpringMVC吧?
    【JavaWeb】练习三
    基于C++的简单ANN(人工神经网络)模型
    【字符串匹配算法】KMP、哈希
    leetcode1297. 子串的最大出现次数
    java基础运算符 之 赋值运算符
    掌握五个元组的用法,让python代码飞得更快
    设计模式之策略模式
  • 原文地址:https://blog.csdn.net/HugMua/article/details/133929414