在 Android Studio 中创建和使用小部件
简介
本指南将指导您在 Android Studio 中创建和使用小部件。您将逐步构建一个应用程序,当用户点击屏幕上显示的按钮对象时,该应用程序会更改应用程序的背景颜色并更改 TextView 对象的文本。
设置和基础知识
有关 Android Studio 设置和基本“Hello World”应用程序的说明,请参阅Sudheer Kumar 之前关于 Android Studio 的教程。
小部件
小部件使用户能够与 Android Studio 应用程序页面进行交互。小部件有多种类型,例如按钮和文本视图。
要查看所有可用的小部件,请创建一个名为“Widgets”的新应用程序项目,然后选择“空活动”。将您的活动命名为“MainActivity”。
每个 Android 活动都有两个组成部分:XML(可扩展标记语言)设计(美观部分)和 Java 文本(智慧部分)。
在 activity_main.xml 页面上,您可以看到各种布局选项下方的完整小部件面板。
如您所见,有 20 个小部件可供您使用。在本指南中,我们将讨论 TextView 和 Buttons,它们可能是 Android 开发中最常见的小部件。
创建小部件
您的默认活动带有一个包含“Hello World”的 TextView。因此,从技术上讲,您在本教程之前就已经创建了一个小部件,甚至都不知道它的存在!
要创建另一个小部件,我们只需将所需的小部件拖放到 Android 应用程序页面上的所需位置。
例如,让我们在页面的中心创建一个按钮。Android Studio 将帮助我们自动对齐小部件。请记住,我们还可以通过更改小部件的属性来对齐小部件,这些属性显示在 XML 文本页面上。
更改按钮文本
默认情况下,按钮的文本元素为“新按钮”。您可以通过双击按钮文本并在设计页面上进行修改,或者滚动右侧的按钮属性并找到文本属性来更改按钮的文本。最后,您可以通过切换到 XML 文本选项卡并修改其android:text属性来更改其文本。
让我们将 XML 文本页面上的按钮属性改为android:text = “Change Background Color”,让按钮显示“Change Background Color”。
字符串资源
更改后,您会发现代码以黄色突出显示。别担心,您的应用程序没有损坏。
您会收到警告,因为我们刚刚输入的字符串(“更改背景颜色”)是硬编码字符串,需要将其转换为字符串资源。字符串资源存储在应用程序res文件夹中的strings.xml文件中。每次您硬编码字符串时,Android Studio 都会指出字符串资源错误。
点击硬编码字符串旁边的黄色灯泡并选择“提取字符串资源”,即可修复此错误。选择资源名称,然后点击“确定”按钮保存资源。
小部件:onClick
如果您切换到设计页面,选择我们创建的按钮小部件,并滚动浏览其属性,您将找到 onClick 属性。onClick允许您选择一个 Java 方法,应用程序在单击按钮后将调用该方法。
让我们更改按钮的 onClick 属性以调用方法“changeColor”。请记住,我们必须在 Java 类中创建 changeColor() 方法才能使此 onClick 命令起作用。
小部件:changeColor(查看视图)
组件 ID
要使 changeColor 方法发挥作用,我们需要为布局和 TextView 分配 ID。默认情况下,我们的“Hello World”TextView 对象没有 ID,我们的布局也没有 ID(布局是 RelativeLayout,这意味着它允许小部件和其他组件相互对齐)。
在右上方的框中选择 TextView,标题为“Component Tree”。滚动查看其属性,直到看到“id”。将其 ID 更改为“text”。
对 RelativeLayout 组件执行相同的操作,但将其 ID 设置为“layout”。
您应该能够在组件树中看到每个组件旁边对应的 ID。
创建实际方法
让我们转到实际的 changeColor 方法。转到MainActivity.java选项卡。在此选项卡中,您将看到一个名为 onCreate 的方法。每当应用程序首次启动时,此方法都会运行。
我们将在 onCreate 之后立即创建“changeColor”方法。将以下内容添加到MainActivity.java类中:
public void changeColor(View view)
{
RelativeLayout layout = (RelativeLayout)findViewById(R.id.layout);
TextView text = (TextView)findViewById(R.id.text);
layout.setBackgroundColor(Color.RED);
text.setText(R.string.PageIsRed);
}
一旦按钮被点击,我们的方法就会将布局的颜色变为红色。它还会将 TextView 对象设置为“页面为红色”。
对于 Android Studio 的初学者来说,上面的代码块中有很多内容值得注意。
首先,查看我们的方法签名:public void changeColor(View view)。Android 要求 onClick 方法将 View 作为参数;不这样做可能会导致您的应用崩溃。
接下来,请注意findViewById()方法。这是访问应用程序中使用的 View(或应用程序屏幕上的对象)的标准方法。如您所见,我们需要将结果视图转换为 RelativeLayout。此转换是必要的,因为findViewById返回一个 View;Java 多态性不允许 RelativeLayout(即 View)推广到所有类型的 View。
再次,当您使用text.setText("Page is Red")时,您还会看到有关字符串资源的黄色警告。以我们处理按钮文本字符串资源警告的相同方式处理此警告,您将获得与我的一样的字符串资源(R.string.PageIsRed)。
测试应用程序
在模拟器或可调试的外部 Android 设备上运行该应用程序。单击按钮会更改布局的颜色,也会更改 TextView。目前,一旦用户单击按钮,小部件就会变得无用。尝试奖励活动,让我们的按钮更有用!
结论
显然,小部件是 Android 开发不可或缺的一部分。想想你点击 Android 应用程序上的按钮或在应用程序页面上看到文本的无数次。但不要忘记还有更多的小部件可以使用;学习使用各种小部件可以帮助你创建更完整、更用户友好的应用程序。
奖金活动!
如果上述简单的练习不足以满足您的 Android 渴求,请尝试以下涉及我们使用的小部件的附带项目之一:
- 让按钮将布局背景更改为随机颜色
- 创建另一个按钮,用于重置布局的颜色
- 设置文本自动匹配布局颜色
如果您可以基本独立完成上述活动,那么对于小部件而言,您就不再是初学者了!
希望您喜欢这篇有关 Android Studio 和小部件的初学者教程。敬请期待更多 Android 资讯!
如果本指南对您有帮助,请点击右上角的“竖起大拇指”图标。
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~