《Android App开发入门:使用Android Studio 2.X开发环境》——2-4 组件的布局与属性设置

简介: 本节书摘来自华章计算机《Android App开发入门:使用Android Studio 2.X开发环境》一书中的第2章,第2-4节,作者 施威铭,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2-4 组件的布局与属性设置

为了方便用户设计 App,Android Studio 事先设计好了许多常用的视觉组件,我们只要把这些组件加到布局文件的布局编辑区(或单击下方的 Text 标签,切换到文本模式加入组件的标签),就可以很快地创建按钮、文本框、输入字段、多选按钮甚至图像等视觉组件。

每一个组件在程序执行时都有一个对应的 Java 对象,这个对象的类通常与在图形化的布局编辑器中看到的组件类相同。例如,显示“Hello World!”文字的是 TextView 类的组件,实际程序执行时就会有一个 TextView 类的对应对象,只要能获取这个对应的对象,就可以调用该对象的方法操控界面上的组件,如改变文字大小、变更显示的文字等。

image

把组件拉到布局编辑区后,接着要设置它的属性,如大小、颜色、文字以及功能等(这就与在 XML 设置标签的属性是一样的)。

image

image
image

image
image

id 属性

用户在视觉设计时创建的组件要如何在 Java 程序中取用呢?要做到这一点,最重要的是帮组件设置id属性值,并为组件命名。当组件设置了 id 属性后,就会在上一节介绍过的 R.java 中产生对应的资源 ID。Android 把所有可以放到图形化布局编辑区的组件都归属于一个资源类,也就是 id 类,因此对于 id 类的这些组件,其资源 ID 就是“R.id.资源名称”。例如,将一个TextView 经由 id 属性命名为 txv,用户就可以用 R.id.txv存取该 TextView了。

image

fndViewById() 方法

image

顾名思义,?ndViewById() 就是?nd view by id,也就是根据指定的资源 ID 找出对应View对象的意思。由于 ?ndViewById() 返回的是 View 类的对象,因此需要强制转型为组件真正所属的类,才能使用组件特有的功能。

image
image

textView的常见属性

除了 id 属性以外,组件还有许多其他属性,在本书后文会陆续进行介绍,此处先看一下 textView 的几个常用属性。

image
image

在属性中设置引用

有些属性必须引用(Reference)其他资源,在设置时是以“@ 资源类 / 资源名称”的格式指定所要使用的资源,如要显示 res/mipmap/ic_launcher.png 图标文件,可将引用设为 “@mipmap/ic_launcher”。这是资源在 XML(如布局设置文件)的写法, 而之前的 “R.资源类.资源名称”是在 Java 程序中的写法(如 R.mipmap.ic_launcher)。

image

有些属性可以直接设置值,也可以引用资源,如设置组件上所要显示文字的 text 属性,就可以直接在属性字段填入要显示的文字,或者使用定义在 res/values 文件夹下 strings.xml 文件中的字符串。例如:

image
image

使用引用资源的好处是未来可以根据用户所使用的语言提供不同的资源文件,让系统自动选择符合该用户能阅读的文字、图形等,而不需要更改任何一行程序代码。

image

在属性中设置方法的名称

有些属性会引用方法(Method)而不是资源(Resource)。例如,下一节马上会用到一个叫 bigger() 的方法,用户如果把 bigger 填入 button 按钮组件的 onClick 属性字段,之后凡是单击button ,Android 系统都会根据 onClick字段的引用执行 bigger() 方法。

image

完成上述自定义方法与属性设置后,Android 就会自动在用户单击按钮时调用用户的自定义方法(bigger),达到单击按钮就放大文字的效果。

image

相关文章
|
2月前
|
SQL 人工智能 Dart
Android Studio的插件生态非常丰富
Android Studio的插件生态非常丰富
80 1
|
2月前
|
Ubuntu Linux Android开发
Android Studio支持多种操作系统
Android Studio支持多种操作系统
82 1
|
2月前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
|
2天前
|
存储 监控 API
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
|
26天前
|
搜索推荐 前端开发 API
探索安卓开发中的自定义视图:打造个性化用户界面
在安卓应用开发的广阔天地中,自定义视图是一块神奇的画布,让开发者能够突破标准控件的限制,绘制出独一无二的用户界面。本文将带你走进自定义视图的世界,从基础概念到实战技巧,逐步揭示如何在安卓平台上创建和运用自定义视图来提升用户体验。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开新的视野,让你的应用在众多同质化产品中脱颖而出。
52 19
|
26天前
|
JSON Java API
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
55 14
|
29天前
|
Java Linux 数据库
探索安卓开发:打造你的第一款应用
在数字时代的浪潮中,每个人都有机会成为创意的实现者。本文将带你走进安卓开发的奇妙世界,通过浅显易懂的语言和实际代码示例,引导你从零开始构建自己的第一款安卓应用。无论你是编程新手还是希望拓展技术的开发者,这篇文章都将为你打开一扇门,让你的创意和技术一起飞扬。
|
27天前
|
XML 存储 Java
探索安卓开发之旅:从新手到专家
在数字时代,掌握安卓应用开发技能是进入IT行业的关键。本文将引导读者从零基础开始,逐步深入安卓开发的世界,通过实际案例和代码示例,展示如何构建自己的第一个安卓应用。我们将探讨基本概念、开发工具设置、用户界面设计、数据处理以及发布应用的全过程。无论你是编程新手还是有一定基础的开发者,这篇文章都将为你提供宝贵的知识和技能,帮助你在安卓开发的道路上迈出坚实的步伐。
32 5
|
26天前
|
开发框架 Android开发 iOS开发
安卓与iOS开发中的跨平台策略:一次编码,多平台部署
在移动应用开发的广阔天地中,安卓和iOS两大阵营各占一方。随着技术的发展,跨平台开发框架应运而生,它们承诺着“一次编码,到处运行”的便捷。本文将深入探讨跨平台开发的现状、挑战以及未来趋势,同时通过代码示例揭示跨平台工具的实际运用。
|
27天前
|
XML 搜索推荐 前端开发
安卓开发中的自定义视图:打造个性化UI组件
在安卓应用开发中,自定义视图是一种强大的工具,它允许开发者创造独一无二的用户界面元素,从而提升应用的外观和用户体验。本文将通过一个简单的自定义视图示例,引导你了解如何在安卓项目中实现自定义组件,并探讨其背后的技术原理。我们将从基础的View类讲起,逐步深入到绘图、事件处理以及性能优化等方面。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。