在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、匿名内部类实现

publicclassMainActivityextendsAppCompatActivity{privateButtonloginButton;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);/****1、初始化当前所需要的控件*findViewById---返回一个View对象*2、设置Button的监听器,通过监听器实现点击Button的操作*/loginButton=(Button)findViewById(R.id.button);//监听事件匿名内部类实现loginButton.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){//在当前方法中监听点击Button的事件Toast.makeText(MainActivity.this,"Youclickedfirstbutton",Toast.LENGTH_SHORT).show();}});}}

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

publicclassMainActivityextendsAppCompatActivity{privateButtonbt1;privateImageButtonbt3;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){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(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){//在当前方法中监听点击Button的事件Toast.makeText(MainActivity.this,"Youclickedfirstbutton",Toast.LENGTH_SHORT).show();}});bt3.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){Toast.makeText(MainActivity.this,"YouclickedImagebutton",Toast.LENGTH_SHORT).show();}});/****外部类实现*///bt1.setOnClickListener(newMyOnClickListener(){//publicvoidonClick(Viewview){//super.onClick(view);//Toast.makeText(MainActivity.this,"点击了普通按钮",Toast.LENGTH_LONG).show();//}//});}//@Override//publicvoidonClick(Viewview){//Log.i("tag","第三种方式");//}}////实现一个点击事件的接口//classMyOnClickListenerimplementsView.OnClickListener{////@Override//publicvoidonClick(Viewview){//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接口

publicclassMainActivityextendsAppCompatActivity重写方法:@OverridepublicvoidonClick(Viewview){Log.i("tag","第三种方式");}实现点击事件:////接口方式实现监听事件:////传入this,即实现当前实现的接口重写的Onclick方法提供的事件//bt3.setOnClickListener(this);

更多相关文章

  1. Android(安卓)SystemUI的EventBus实现原理
  2. android 屏幕触摸事件的分发与处理
  3. Android(安卓)防止按钮重复点击
  4. 下载安装eclipse ADT插件:
  5. Android(安卓)可拖拽悬浮按钮
  6. Android(安卓)Edittext获取焦点和失去焦点事件
  7. Android系统自带更新DownloadManager用法
  8. Android(安卓)Contextual ActionBar (CAB)上下文操作栏使用指南
  9. 给Android组件添加事件一个很好用的方法

随机推荐

  1. Android(安卓)2.3离线下载安装
  2. 如何用同一份代码产生不同包名得APK包
  3. JNI综合实验一:LED点亮+IO电平读取
  4. Android(安卓)创建AlertDislog时要小心哦
  5. listview的item中含有checkbox的一些问题
  6. arcgis for android访问arcgis server上
  7. android aidl 传递parcelable
  8. ActionBar的简单使用(修改背景颜色,文字居
  9. 手机cpu厂商和手机cpu架构
  10. Android(安卓)SDK API 13升级指南