新增button控件为其添加onClick事件及Text

简介: 一、如何向一个XML文件添加button控件并添加onClick事件及button Text?     以layout形式打开activity_main.xml,拖出一个Button控件,再进入activity_main.

一、如何向一个XML文件添加button控件并添加onClick事件及button Text?

    以layout形式打开activity_main.xml,拖出一个Button控件,再进入activity_main.xml的XML形式:

image

 


  1. Button
  2.     android:id="@+id/button1"
  3.     android:layout_width="wrap_content"
  4.     android:layout_height="wrap_content"
  5.     android:layout_alignLeft="@+id/textView1"
  6.     android:layout_below="@+id/textView1"
  7.     android:layout_marginLeft="33dp"
  8.     android:layout_marginTop="43dp"
  9.     android:text="@string/hello_button"
  10.     android:onClick="Btn1_Click" />


1、设置onClick事件

(1)、在activity_main.xml相应位置添加行android:onClick="Btn1_Click"

 (2)、进入MainActivity.java文件,依次执行下面的语句



  1. import android.widget.*; // 引入JAVA包

  2. Button button; // 创建一个button对象
  3. int count = 0;

  4. 在onCreate()方法中添加如下语句:
  5. button = (Button)findViewById(R.id.button1);


编写onClick方法


  1. public void Btn1_Click(View view)
  2. {
  3.     String str = "---->" + count;
  4.     textView.setText(str);
  5.     count++;
  6. }


2、设置button界面的text

(1)、在activity_main.xml相应位置添加android:text="@string/hello_button"
    注意,这里是为string定义了一个名字,hello_button,它映射着一堆字符串。见(2)中介绍。

(2)、进入values/string.xml文件,对相应的进入变量进行修改

<?xml version="1.0" encoding="utf-8"?>

    PROJECT_062503
    Settings
    Hello world,hello world
    Hello man,hello man
    Hello 062503

 

二、运行效果

image

image

三、几个完整的代码文件

activity_main.xml

  1. RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:paddingBottom="@dimen/activity_vertical_margin"
  6.     android:paddingLeft="@dimen/activity_horizontal_margin"
  7.     android:paddingRight="@dimen/activity_horizontal_margin"
  8.     android:paddingTop="@dimen/activity_vertical_margin"
  9.     tools:context=".MainActivity" >

  10.     Button
  11.         android:id="@+id/button1"
  12.         android:layout_width="wrap_content"
  13.         android:layout_height="wrap_content"
  14.         android:layout_alignLeft="@+id/textView1"
  15.         android:layout_below="@+id/textView1"
  16.         android:layout_marginLeft="33dp"
  17.         android:layout_marginTop="43dp"
  18.         android:text="@string/hello_button"
  19.         android:onClick="Btn1_Click" />


  20.     TextView
  21.         android:id="@+id/textView1"
  22.         android:layout_width="wrap_content"
  23.         android:layout_height="wrap_content"
  24.         android:layout_alignParentLeft="true"
  25.         android:layout_alignParentTop="true"
  26.         android:layout_marginLeft="46dp"
  27.         android:layout_marginTop="14dp"
  28.         android:text="@string/hello_world" />

  29. /RelativeLayout>


MainActivity.java

  1. package com.example.project_062503;

  2. import android.os.Bundle;
  3. import android.app.Activity;
  4. import android.view.Menu;
  5. import android.view.View;
  6. import android.widget.Button;
  7. import android.widget.*;


  8. public class MainActivity extends Activity {

  9.     Button button;
  10.     TextView textView;
  11.     int count = 0;
  12.     
  13.     @Override
  14.     protected void onCreate(Bundle savedInstanceState) {
  15.         super.onCreate(savedInstanceState);
  16.         setContentView(R.layout.activity_main);
  17.         button = (Button)findViewById(R.id.button1);
  18.         textView = (TextView)findViewById(R.id.textView1);
  19.     }

  20.     @Override
  21.     public boolean onCreateOptionsMenu(Menu menu) {
  22.         // Inflate the menu; this adds items to the action bar if it is present.
  23.         getMenuInflater().inflate(R.menu.main, menu);
  24.         return true;
  25.     }
  26.     
  27.     public void Btn1_Click(View view)
  28.     {        
  29.         String str = "---->" + count;
  30.         textView.setText(str);
  31.         count++;
  32.     }

  33. }


相关文章
|
人工智能 小程序 算法
分享64个JavaGame源码总有一个是你想要的
分享64个JavaGame源码总有一个是你想要的
356 0
|
运维 Devops Java
阿里巴巴DevOps实践指南(十三)| 测试提效
分布式测试为测试速度插上了翅膀,精准测试有效的识别出了测试的范围,增量覆盖率又为测试的不断完备提供了有利的指引,线上覆盖率帮助我们有效的进行应用瘦身。充分利用好这些技术手段进行测试提效,可以让持续交付的过程更加的顺畅
阿里巴巴DevOps实践指南(十三)| 测试提效
|
Arthas 监控 Cloud Native
用 Arthas 神器来诊断 HBase 异常进程
HBase 集群的某一个 RegionServer 的 CPU 使用率突然飙升到百分之百,单独重启该 RegionServer 之后,CPU 的负载依旧会逐渐攀上顶峰。多次重启集群之后,CPU 满载的现象依然会复现,且会持续居高不下,慢慢地该 RegionServer 就会宕掉,慢慢地 HBase 集群就完犊子了。
用 Arthas 神器来诊断 HBase 异常进程
|
12月前
|
人工智能 自然语言处理 搜索推荐
【通义】AI视界|微软Copilot Studio推出新功能,帮助企业更便捷地构建和部署AI代理
本文介绍了近期科技领域的五大重要动态:马斯克旗下xAI发布首个API,苹果内部研究显示ChatGPT比Siri准确率高25%,微软Copilot Studio推出新功能,霍尼韦尔与谷歌合作引入Gemini AI,浑水创始人建议买入科技七巨头股票。更多资讯请访问【通义】。
|
缓存 搜索推荐 数据库连接
FastAPI 的插件化也太牛了吧!轻松打造可扩展 Web 应用,让你的开发如虎添翼,快来感受这神奇魅力!
【8月更文挑战第31天】在互联网迅速发展的今天,Web应用需求日益多样化。FastAPI作为一种高效灵活的Python Web框架,通过插件化设计帮助开发者轻松构建可扩展应用。插件化让开发者能够根据需求选择合适模块,如用户认证、支付处理等,而无需大幅改动核心代码。这种方式不仅提高了开发效率,还增强了应用的稳定性和适应性,使FastAPI成为未来Web开发的理想平台。
434 0
|
自然语言处理 编译器 C语言
转义字符使用详解【C语言】
转义字符使用详解【C语言】
|
消息中间件 存储 中间件
中间件消息队列和事件总线
【6月更文挑战第13天】
315 2
|
存储 安全 编译器
MIT 6.858 计算机系统安全讲义 2014 秋季(一)(2)
MIT 6.858 计算机系统安全讲义 2014 秋季(一)
175 3
|
存储 C语言
C语言实现学生成绩管理系统
C语言实现学生成绩管理系统
567 2
|
算法 Python
Python 一步一步教你用pyglet制作汉诺塔游戏
Python 一步一步教你用pyglet制作汉诺塔游戏
339 0