如何判断EditText是否有焦点
展开全部
判断一个EditText是否右焦点,其实就是给et设置一个onFocusChangeListener监听器。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText et2 = (EditText) findViewById(R.id.et2);
final EditText et1 = (EditText) findViewById(R.id.et1);
//根据是否有焦点更新背景(这里只是演示使用,其实这种更换背景的效果可以通过Selector来实现)
et1.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
Log.e("abc", "et1获取到焦点了。。。。。。");
et1.setBackgroundResource(R.drawable.shape_edit1); //获取焦点后更改背景色
} else {
Log.e("abc", "et1失去焦点了。。。。。。");
et1.setBackgroundResource(R.drawable.shape_edit2); //失去焦点后更改背景色
}
}
});
}
}
注意:
1 . 如果一个界面中,只有一个Et,那么除非手动设置,否则,Et一直有焦点
2 . 如果有多个Et,那么点击哪个ET,哪个Et就会获取焦点
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText et2 = (EditText) findViewById(R.id.et2);
final EditText et1 = (EditText) findViewById(R.id.et1);
//根据是否有焦点更新背景(这里只是演示使用,其实这种更换背景的效果可以通过Selector来实现)
et1.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
Log.e("abc", "et1获取到焦点了。。。。。。");
et1.setBackgroundResource(R.drawable.shape_edit1); //获取焦点后更改背景色
} else {
Log.e("abc", "et1失去焦点了。。。。。。");
et1.setBackgroundResource(R.drawable.shape_edit2); //失去焦点后更改背景色
}
}
});
}
}
注意:
1 . 如果一个界面中,只有一个Et,那么除非手动设置,否则,Et一直有焦点
2 . 如果有多个Et,那么点击哪个ET,哪个Et就会获取焦点
2017-08-26
展开全部
Webview获取焦点时可以自己写代码将EditText的焦点给丢掉
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询