在Activity中需要获取一个id是bookName的TextView控件对象,

(TextView)this.findViewById(R.id.bookName)

使用findViewById方法获取一个View对象,参数为控件的id,同时还需要把View对象强制转换成相应的类型

EditText的众多属性中可以限制输入格式的属性:

android:inputType

设置EditText的android:inputType属性可以限制文本输入类型比如android:inputType="textPassword"为设置输入格式为密码格,

android:inputType="phone"为设置输入格式为拨号键盘

Button

可以设置文本内容的一个按钮

ImageButton

不可以设置文本内容

src:自适应;  background:填充

ImageButton的android:text属性不可以直接赋值

ImageButton是用于在按钮上显示图片的。所以是没有android:text这个属性的。并且如果在布局文件中写上android:text="我是一个按钮",在android 4.4环境中是不会看到任何效果的

1、Button和ImageButton都拥有一个 .setOnClickListener(OnClickListener)方法添加点击事件。

2、所有的控件都有一个onclick事件

3、通过点击事件的监听可以实现点击按钮后发生的动作

监听事件实现的几种方式:

1、匿名内部类实现

public class MainActivity extends AppCompatActivity {private Button loginButton;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);/**** 1、初始化当前所需要的控件*    findViewById--- 返回一个View对象* 2、设置Button的监听器,通过监听器实现点击Button的操作*/loginButton=(Button) findViewById(R.id.button);//监听事件匿名内部类实现loginButton.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//在当前方法中监听点击Button的事件Toast.makeText(MainActivity.this, "You clicked first button", Toast.LENGTH_SHORT).show();}});}
}

同时给一个Button和ImageButton添加Toast事件:

public class MainActivity extends AppCompatActivity{private Button bt1;private ImageButton bt3;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);/**** 1、初始化当前所需要的控件*    findViewById--- 返回一个View对象* 2、设置Button的监听器,通过监听器实现点击Button的操作*/bt1=(Button) findViewById(R.id.button);bt3=(ImageButton)findViewById(R.id.button_i);//监听事件匿名内部类实现bt1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//在当前方法中监听点击Button的事件Toast.makeText(MainActivity.this, "You clicked first button", Toast.LENGTH_SHORT).show();}});bt3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Toast.makeText(MainActivity.this, "You clicked Image button", Toast.LENGTH_SHORT).show();}});/**** 外部类实现*/
//        bt1.setOnClickListener(new MyOnClickListener(){
//            public void onClick(View view){
//                super.onClick(view);
//                Toast.makeText(MainActivity.this,"点击了普通按钮",Toast.LENGTH_LONG).show();
//            }
//        });}//    @Override
//    public void onClick(View view) {
//        Log.i("tag","第三种方式");
//    }
}实现一个点击事件的接口
//class MyOnClickListener implements View.OnClickListener{
//
//    @Override
//    public void onClick(View view) {
//        Log.i("tag","父类的onClick事件");
//    }
//}

2、独立类的实现

新建一个类:

实现一个点击事件的接口//class MyOnClickListener implements View.OnClickListener{////    @Override//    public void onClick(View view) {//        Log.i("tag","父类的onClick事件");//    }//}

实例化新建的类实现点击事件:

        /***         * 外部类实现         *///        bt1.setOnClickListener(new MyOnClickListener(){//            public void onClick(View view){//                super.onClick(view);//                Toast.makeText(MainActivity.this,"点击了普通按钮",Toast.LENGTH_LONG).show();//            }//        });

3、实现接口的方式来实现

直接实现一个OnClickListener接口

public class MainActivity extends AppCompatActivity 重写方法:
@Override
public void onClick(View view) {Log.i("tag","第三种方式");
}实现点击事件:
//        //接口方式实现监听事件:
//        //传入this,即实现当前实现的接口重写的Onclick方法提供的事件
//        bt3.setOnClickListener(this);

转载于:https://blog.51cto.com/yizhimayi/1764473

Android_Button相关推荐

  1. android_button onclick点击事件的5种写法

    android项目开发中经常使用button按钮的onclick点击事件来做一些操作,android onclick事件通常有这5种写法经常被使用,本文以android Toast弹窗来举例,原文转自 ...

  2. android Intent 全面点的介绍

    第一种方式,用action来跳转. 1.使用Action跳转,如果有一个程序的AndroidManifest.xml中的某一个Activity的IntentFilter段中 定义了包含了相同的Acti ...

  3. UI控件之Button(按钮)和ImageButton(图像按钮)

    (一)概述 Button普通按钮跟ImageButton图像按钮的用法基本类似,至于图片相关的则和后面的ImageView相同,所以本节只对Button的用法进行讲解,另外Button是TextVie ...

  4. Button按钮自定义样式

    在进行UI设计时为了美观,可以自定义Button按钮的外观.比如自定义图片作为按钮的背景,直接将图片复制到项目的res/drawable/路径下,然后在xml文件中使用android:backgrou ...

  5. 安卓Activity跳转的几种方式

    本文转载于http://blog.sina.com.cn/s/blog_5140274d0100q4j7.html,本人仅作为学习交流之用,请大家尊重原创. 第一种方式,用action来跳转. 使用A ...

最新文章

  1. 咱们从头到尾说一次 Java 垃圾回收
  2. python 代码-你见过哪些令你瞠目结舌的 Python 代码技巧?
  3. Linux编译dhcpd,linux中搭建dhcpd服务器
  4. ajax datatype_Ajax的基本使用
  5. win10启动修复_以安全模式启动win10的4种方法,简单高效,修复电脑故障必用技巧...
  6. Skype for Business Server 2019 本地部署
  7. 建立唯一索引后mysql策略_【MySQL】MySQL索引背后的之使用策略及优化【转】
  8. linux下架子网卡,Linux下新手装网卡指南
  9. Linux下的uniq,head,tail,cut,paste
  10. linux从字符界面转入图形界面一法
  11. python实现简易动态贝叶斯网络的推断
  12. cad项目数据库服务器,cad项目数据库服务器
  13. java动态数组大总结
  14. Virtuoso Layout 系列教程:01 软件安装教程 - 附资源包
  15. 电压源和电流源的区别
  16. 浅谈单片机低功耗处理
  17. 读书笔记之费曼物理讲义第二册
  18. day15-Appium高级手势操作
  19. 微软被曝泄露2.4TB客户敏感数据;亚马逊因滥用算法面临集体诉讼;推特否认马斯克将裁员75%的传闻 | 每日大事件...
  20. CSRF---跨站请求伪造

热门文章

  1. Python使用MongoDB简记
  2. 【微信】1.微信小程序开发--入门
  3. MySQL的安装和基本操作
  4. Android子线程进度条不显示的问题
  5. 《淘宝网开店 拍摄 修图 设计 装修 实战150招》一一2.8  黄金分割的三分法构图...
  6. 定义和使用结构体变量
  7. ServletContext,ActionContext,ServletActionContext
  8. Matlab中diag函数注意事项
  9. 怎样才能算是在技术上活跃的小公司
  10. 证券行业日志审计需求分析,产品选型和实施建议