button

package com.example.hellowidgets;import com.example.hellowidgets.R.color;import com.example.othor.Mylistenner;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnTouchListener;import android.widget.Button;import android.widget.Toast;public class ButtonActivity extends Activity implements OnClickListener{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_button);final Button btn=(Button) findViewById(R.id.button_event);//匿名内部类实现事件监听与处理btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {btn.setText("你小子还真敢,看我不给你点颜色看看");btn.setTextColor(getResources().getColor(color.red));btn.setBackgroundColor(getResources().getColor(color.blue));//参数arg0代表发生事件的对象,事件源,在本例中,他其实就是那个btn,只不过进行了伪装,换了名字//Button eventSource=(Button)arg0;//eventSource.setText("你小子还真敢,看我不给你点颜色看看");//eventSource.setTextColor(getResources().getColor(color.red));//eventSource.setBackgroundColor(getResources().getColor(color.blue));}});final Button imgBtn=(Button) findViewById(R.id.button_img); imgBtn.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View arg0, MotionEvent arg1) {if(arg1.getAction()==MotionEvent.ACTION_DOWN){Toast.makeText(getApplicationContext(), "我是ontouch事件", Toast.LENGTH_SHORT).show();}return false;}});//测试true与false的区别imgBtn.setOnClickListener(new Mylistenner());//内部类实现监听Button btnEvent=(Button) findViewById(R.id.event_innerClass);//注册监听事件btnEvent.setOnClickListener(new InnerClass());//注册本类监听Button btnEventThis=(Button) findViewById(R.id.event_thisClass);btnEventThis.setOnClickListener(this);//外部类监听,并处理final Button btnOthor=(Button) findViewById(R.id.event_othorClass);btnOthor.setOnClickListener(new Mylistenner());//调用另一个按钮的点击事件Button btnPerform=(Button) findViewById(R.id.event_perform);btnPerform.setOnClickListener(new OnClickListener() {@Override//模拟点击public void onClick(View arg0) {btnOthor.performClick();}});}private class InnerClass implements OnClickListener{public InnerClass(){}@Overridepublic void onClick(View arg0) {Toast.makeText(getApplicationContext(), "我是内部类", Toast.LENGTH_SHORT).show();}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.button, menu);return true;}//本类处理方法@Overridepublic void onClick(View arg0) {Toast.makeText(getApplicationContext(), "我是本类呀\n我自己监听自己了", Toast.LENGTH_SHORT).show();}//配置单击处理事件方法,要遵守规则public void clickHandler(View v){Toast.makeText(getApplicationContext(), "我是配置的方法", Toast.LENGTH_SHORT).show();}}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值