`

android:baselineAligned,baselineAlignedChildIndex,addStatesFromChildren

 
阅读更多

对于可以显示文字的View(如TextView,Button等),它的baseline 指的是这个UI控件中文字Text的baseline 到UI控件顶端的偏移值

可以理解为text下面那条看不见的线

如图设置baseline对齐和不对齐的效果, 左边baselineAligned=true, 右边baselineAligned=false, 红线为假想的baseline

 

 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="3dip"
        android:layout_gravity="center_vertical"
        android:text="@string/baseline_nested_1_label" />

    <!-- We want the middle textview of this vertical linear layout to
      be baseline aligned with the others.-->
    <LinearLayout
            android:orientation="vertical"
            android:baselineAlignedChildIndex="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical">
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="http://fqj183-8041380.blog.163.com/blog/@drawable/arrow_up_float"/>
       1: <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="5dip"
            android:text="@string/baseline_nested_1_label" />
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="http://fqj183-8041380.blog.163.com/blog/@drawable/arrow_down_float"/>
    </LinearLayout>


    <!-- We want the third index textview of this vertical linear layout to
      be baseline aligned with the others.-->
    <LinearLayout
            android:orientation="vertical"
            android:baselineAlignedChildIndex="2"
            android:layout_width="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_height="wrap_content">
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="http://fqj183-8041380.blog.163.com/blog/@drawable/arrow_up_float"/>
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="http://fqj183-8041380.blog.163.com/blog/@drawable/arrow_up_float"/>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="5dip"
            android:text="@string/baseline_nested_1_label" />
    </LinearLayout>


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20sp"
        android:layout_gravity="center_vertical"
        android:text="@string/baseline_nested_1_label" />


</LinearLayout>

红线部分是指用这个layout下面的第几个元素跟其他的元素进行baseline

比方说第一个红线部分:是让这个layout下面的第一个元素,也就是1:处的textView,跟其他的元素进行baseline,这个元素设置了:android:layout_marginRight="5dip",右边 的linearlayout离着这个元素的右边是5dip.

android:layout_baselinealignedChildIndex属性 指当前layout是 以哪个view的基准线与其他的View进行对齐。这个属性只对Button、TextView、EditView有效且下标从0开始。

 

 

android:addStatesFromChildren="true".属性说明该viewgroup的drawable属性是否把它的子类的drawable的state包含进来。测试中linearlayout如果不包含该属性(false),当子widget被点击时不会出现被选中的状态。也就是子类的state不会被传递给父类了

 

  • 大小: 24.6 KB
分享到:
评论

相关推荐

    BaseLine.zip

    主要介绍LinearLayout中的两个属性 android:baselineAligned 和android:baselineAlignedChildIndex

    Android 布局控件之LinearLayout详细介绍

    LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列,按照相对位置来排列所有的widgets或者其他的containers,超过边界时,某些控件将... android:baselineAligned:是否允许用户调整它内容的基线。

    node-v12.18.3-linux-s390x.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    用于高级分析的阿联酋汽车市场销售数据

    通过我们最新收集的数据集,释放阿联酋充满活力的汽车市场的潜力,该数据集于2024年4月12日更新。该主要数据集来源于dubizzle.com,提供了阿拉伯联合酋长国当前汽车销售的全面快照,为汽车市场趋势和消费者偏好提供了宝贵的见解。

    基于Python+opencv+keras+numpy+sklearn的人脸识别门禁系统.zip

    基于OpenCV的系统

    美国大学生数学建模竞赛简介

    美国大学生数学建模竞赛(MCM/ICM),简称“美赛”,是一项由美国数学及其应用联合会(COMAP)主办的国际性数学建模竞赛。该竞赛自1985年创办以来,已经成为全球范围内极具影响力的数学建模竞赛之一,旨在鼓励大学生团队应用数学知识解决实际问题,提升学生的数学建模能力、科研能力以及团队合作精神。 美赛作为一项国际性的学术竞赛,对参赛学生的数学、英语、论文写作和科研能力有很高的要求。竞赛通常要求三人一组,在四天内完成从建立数学模型、求解、验证到撰写论文的全过程。竞赛题目覆盖经济、管理、环境、资源、生态、医学、安全等多个领域。

    Blackmagic SmartView SmartScope Duo 4K SmartView 4K 五月 安装和操作手册

    Blackmagic SmartView SmartScope SmartView Duo SmartScope Duo 4K SmartView 4K 五月 2021 安装和操作手册

    unity开发入门教程.zip

    Unity是一个流行的跨平台游戏开发引擎,它允许开发者使用C#等语言创建2D和3D游戏。以下是一个Unity开发的基本入门教程: 1. 安装Unity 首先,你需要从Unity的官方网站下载并安装Unity Hub和Unity编辑器。Unity Hub是一个用于管理Unity版本和项目的工具。 2. 创建新项目 打开Unity Hub,点击“New”来创建一个新项目。选择你需要的Unity版本、模板(例如2D或3D)和其他设置。 3. 熟悉Unity界面 Unity的界面主要由以下几个部分组成: Hierarchy:显示场景中的所有游戏对象。 Project:显示项目的所有资源,如场景、模型、材质、脚本等。 Inspector:显示当前选中游戏对象的详细信息和属性。 Scene:显示当前场景的3D视图,你可以在这里编辑游戏对象。 Game:显示游戏运行时的视图。

    根据各种因素预测一个地区发生洪水的概率设计代码

    根据各种因素预测一个地区发生洪水的概率。

    python 3.9.19源码编译包

    python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包python 3.9.19源码编译包

    信息技术填空选择100题

    总结出了信息技术课程常考的100道填空题,答案在花括号内。制卷时只需要将花括号及其中的内容替换成圆括号即可。

    数据结构实验代码中国象棋马(上机实验).rar

    数据结构实验代码

    一篇基础的Scratch语言教程

    一篇基础的Scratch语言教程 Scratch 是一种面向青少年的图形化编程语言,由麻省理工学院(MIT)的终身幼儿园团队开发。它通过拖放代码块的方式,使得编程教育变得更加直观和有趣。以下是一篇基础的Scratch语言教程,适合初学者入门。

    第五次作业函数第一题代码

    第五次作业函数第一题--

    node-v12.22.10-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    基于扩散概率模型在无监督OCT去噪中的应用.zip

    本项目聚焦于基于扩散概率模型在无监督光学相干断层扫描(OCT)去噪中的应用。OCT是一种高分辨率的医学影像技术,常用于视网膜、心血管等疾病的诊断。 传统的OCT去噪方法往往需要依赖于带有清晰图像的监督学习,而本项目则探索在无监督环境下,利用扩散概率模型对OCT图像进行去噪。该方法无需清晰的图像作为监督,能够有效减少对大量标注数据的依赖。 在数据集方面,我们使用了公开的OCT影像数据集,如OCT2017等,并进行了预处理,包括图像裁剪、大小调整和归一化等。在环境搭建方面,我们使用Python编程语言,基于TensorFlow和PyTorch深度学习框架进行开发。为了提高计算效率,我们还使用了GPU加速计算。此外,我们还采用了Docker容器技术,确保实验结果的可重复性。 项目完成后,将实现对OCT图像的无监督去噪,提高医学影像的清晰度和可用性,为相关疾病的诊断和治疗提供有力支持。同时,项目成果也可应用于其他无监督去噪任务。

    福禄克 1550B 兆欧表 用户手册 FLUKE 1550B MegOhmMeter

    福禄克 1550B 兆欧表 用户手册

    星间飞行二次元角色研修课程-课程网盘链接提取码下载 .txt

    本课程旨在深入探讨二次元角色设计理念,引导学员掌握角色塑造技巧与创作方法。通过案例分析与实践训练,学员将学习角色设定、情感表达等关键要素,提升角色创作能力,激发创意潜能,打造独具魅力的二次元角色形象。 课程大小:6.4G

    node-v12.16.1-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    BRD母婴需求文档(产品需求文档及原型图都市孕妈项目).docx

    BRD母婴需求文档(产品需求文档及原型图都市孕妈项目).docx

Global site tag (gtag.js) - Google Analytics