Android studio点击事件的处理

处理方式1:
利用onClick函数
1.在TextView中写下面的点击处理的函数(框架为TextView)
<TextView
android:onClick=“onOneClick”;
android:background="@drawable/selector_white_bg"
/>
//onOneClick指的是控制操作的名称

2.在相应的activity页面中定义一个TAG
private static final String TAG =“MainActivity”;

3.创建一个构造函数
public void oneOnClick(View view){
Log.d(TAG,“one be click…”);
if (view instanceof TextView){
String oneText =((TextView)view).getText().toString();
Log.d(TAG,"text === " + oneText);
}
}

4.写出控制器的drawable(框架为selector)

<?xml version="1.0" encoding="utf-8"?>
<item android:state_pressed="true"   android:drawable="@drawable/shape_rectangle_black" />
<item android:drawable="@drawable/shape_rectangle" />

需要注意的是,drawable里必须要调用一个有关drawable的框架才可以实现,直接输入颜色等(eg:#00ff00)这种是不被允许的

5.drawable框架的建立(框架为shape)

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

<solid android:color="#ffffff"/>

<stroke android:color="#333333"
    android:width="2dp"/>

处理方式2:
第二种方式通过id声明的方式找到控件,然后对控件设置点击事件。

1.给对应的控件添加id
<TextView
android:id="@+id/tv_cancel"

/>

2.在对应的activity里找到控件(其实就是将你添加的tv_cancel进行具体的定义)
private void initView(){
TextView mcancel = (TextView)this.findViewById(R.id.tv_cancel);
TextView mplusOrMinus = (TextView)this.findViewById(R.id.tv_plus_or_minus);
}

//这里的(TextView)是一种强制类型转换,通过点击你定义的id(这里是cancel)进行快捷操作ctrl+alt+f可以实现快速在主函数里定义TextView cancel。

private void initView(){
mcancel=(TextView)this.findViewById(R.id.tv_cancel);
mplusOrMinus=(TextView)this.findViewById(R.id.tv_plus_or_minus);
}

3.设置点击事件
先定义一个点击事件:
private void initClickEvent(){
mcancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, “content ==” + ((TextView)v).getText().toString());
}
});
再定义一个判断函数,其中点击事件中已经写好了判断函数
public void onClick(View v){
if (v == mcancel)
Log.d(TAG,“点击了mcancel”);
}
//这里的判断函数可以用if-else,也可以用switch-case来写

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值