【Android 开发入门】为按钮添加Click单击事件处理程序,显示/隐藏另一个按钮

简介: 在上篇“走进Android开发的世界,HelloWorld”,我们创建了一个Android 项目 HelloWorld,并演示了如何通过USB连接手机查看运行效果;这里讲一下如何为应用添加一个按钮,并为按钮添加Click单击事件处理程序,显示/隐藏另一个按钮。

在上篇“走进Android开发的世界,HelloWorld”,我们创建了一个Android 项目 HelloWorld,并演示了如何通过USB连接手机查看运行效果;这里讲一下如何为应用添加一个按钮,并为按钮添加Click单击事件处理程序,显示/隐藏另一个按钮。

添加按钮

在HelloWorld项目的基础上,打开界面布局文件:activity_main.xml

切换到Design(设计)模式;在组件Button上按下鼠标左键,拖动到右侧视图窗口中你希望的位置松开鼠标左键;


OK,一个按钮就添加完成了,双击这个按钮可以修改它的文本和ID(用来标识唯一的它,在这个项目中);

有小伙伴问了,你的视图怎么那么大?

请注意右上角的红色箭头指向的功能图标(缩放尺寸为1:1);


你可以自己输入希望的文本,也可以选择资源中的(使用资源中的有个好处就是国际化);


添加事件处理程序

用过VS的小伙伴会习惯直接双击onClick右侧的输入框来生成事件处理程序代码;

但是很遗憾,AS不支持这样的功能;

不过它倒是可以选择一个已经存在的事件处理程序,但是对方法也没有进行严格的过虑;


而我们的事件处理程序还没有写呢,希望快速生成代码应该怎么操作呢?

我学习到一个还算过得去的方法;

如下图,在按钮上单击鼠标右键,选择:Go To Declaration(转到定义);

也可以使用快捷键:Ctrl + B;


这时会跳转到.xml布局文件的文本视图,我们可以看到按钮的定义;

插入一行代码:

android:onClick="button2_click"
我刚刚给Button的ID是button2,所以事件处理程序就命名为:button2_click

然后把光标定位在button2_click上,按下快捷键:Alt + Enter(回车),

会弹出一个功能提示框,如下图,再按一下回车键(使用默认选项);


这里会自动切换为 MainActivity.java 文件,如下图,对应的事件处理程序已经创建好了。

当然,你自己动手Copy或打出以下代码也可以,只是我比较懒。好吧,我真的很懒。


接下来我们添加点代码,实现点击这个按钮,隐藏/显示另一个按钮的功能;

首先编写代码找到另一个按钮;抱歉,我之前添加了一个按钮ID为:button1;

AS的提示功能还是可以和VS媲美媲美的;


完整事件响应代码:

    public void button2_click(View view) {
        Button btn = (Button) findViewById(R.id.button1);

        if (btn != null){
            if (btn.getVisibility() == view.VISIBLE) {
                btn.setVisibility(view.INVISIBLE);
            }else{
                btn.setVisibility(view.VISIBLE);
            }
        }
    }
添加完成,就可以运行/调试查看效果了。


结束语

OK,这就是按钮Click单击的应用,很简单。

在写这篇文章的时候,突然产生了一个疑问:

android studio xml和java文件为什么使用两种不同的命名规则? 

如:activity_main.xml和MainActivity.java

百搜不得解,希望高手看到帮忙解答。

上一篇:android studio 控制台打印输出日志

系列导航:【Android 开发入门】

===========文档信息============ 
版权声明:非商用自由转载-保持署名-注明出处 
署名(BY) :testcs_dn(微wx笑) 
文章出处:[无知人生,记录点滴](http://blog.csdn.net/testcs_dn)

目录
相关文章
|
25天前
|
XML IDE 开发工具
【Android UI】自定义带按钮的标题栏
【Android UI】自定义带按钮的标题栏
30 7
【Android UI】自定义带按钮的标题栏
|
15天前
|
安全 JavaScript 前端开发
kotlin开发安卓app,JetPack Compose框架,给webview新增一个按钮,点击刷新网页
在Kotlin中开发Android应用,使用Jetpack Compose框架时,可以通过添加一个按钮到TopAppBar来实现WebView页面的刷新功能。按钮位于右上角,点击后调用`webViewState?.reload()`来刷新网页内容。以下是代码摘要:
|
21天前
|
存储 Android开发
安卓app,MediaPlayer播放本地音频 | 按钮控制播放和停止
在Jetpack Compose中,不直接操作原生Android组件如`Button`和`MediaPlayer`,而是使用Compose UI构建器定义界面并结合ViewModel管理音频播放逻辑。以下示例展示如何播放本地音频并用按钮控制播放/停止:创建一个`AudioPlayerViewModel`管理`MediaPlayer`实例和播放状态,然后在Compose UI中使用`Button`根据`isPlaying`状态控制播放。记得在`MainActivity`设置Compose UI,并处理相关依赖和权限。
|
5天前
|
编解码 开发工具 Android开发
技术心得:打造自己的智能投屏体验——Android投屏开发入门
技术心得:打造自己的智能投屏体验——Android投屏开发入门
10 0
|
5天前
|
Java Android开发
程序与技术分享:Android使用Dagger注入的方式初始化对象的简单使用
程序与技术分享:Android使用Dagger注入的方式初始化对象的简单使用
|
5天前
|
安全 网络协议 网络安全
程序与技术分享:Android应用安全之数据传输安全
程序与技术分享:Android应用安全之数据传输安全
|
29天前
|
XML Android开发 数据格式
37. 【Android教程】基于监听的事件处理机制
37. 【Android教程】基于监听的事件处理机制
25 2
|
29天前
|
XML Java Android开发
15. 【Android教程】按钮 Button/ImageButton
15. 【Android教程】按钮 Button/ImageButton
17 2
|
12天前
|
Android开发
杨老师课堂_安卓教程第一篇之入门
杨老师课堂_安卓教程第一篇之入门
14 0
|
4天前
|
安全 Android开发 iOS开发
探索安卓与iOS开发的差异:平台特性与用户体验的深度对比
在移动应用开发的广阔天地中,安卓和iOS两大平台各占半壁江山。本文旨在通过数据驱动的分析方法,深入探讨这两大操作系统在开发环境、用户界面设计及市场表现等方面的差异。引用最新的行业报告和科研数据,结合技术专家的观点,本文将提供对开发者和市场分析师均有价值的洞见。