一个有意思的应用--按回车键将EditText组件 转换为 Button组件

实现原理: 当在某一个EditText 中输入文本后按回车键,系统将EditText 隐藏,并在EditText的位置显示一个按钮,按钮的文本就是在EditText 中输入的文本

注意: 不能将android:visibility 属性值设为invisible,如果设为invisible,虽然系统不会显示Button,但仍会留出Button的位置,然而将属性值设为gone,就彻底隐藏了Button 

主要方法是:

public boolean onKey(View view,int keyCode,KeyEvent event){

if(keyCode == KeyEvent.KEYCODE_ENTER && count == 0){

//editTexts 表示editText数组,

editTexts[i].setVisibility(View.GONE);

//buttons 表示 button数组

buttons[i].setVisibility(View.VISIBLE);

buttons[i].setText(editTexts[i].getText());

i++;

count++;

}

else

  count = 0;

return true;

}

由于在EditText 中按回车键会产生两次值为KEYCODE_ENTER 的键码,因此在这里使用count 计数来保证只处理第1 次回车引发的onKey事件.

具体代码 见 ch05_hideedittext工程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值