我有一个listview,每行都有edittext。当我点击编辑文本键盘来。然后当我点击后退按钮关闭键盘时,我想清除焦点。
由于listview布局在适配器中使用,我无法在活动中执行此操作。
请帮忙。
〜干杯 普拉卡什
答案 0 :(得分:1)
使用此方法清除编辑文本的焦点:
private int tempHeight = 0;
private Rect r = null;
public void gettingStatusOfKeyboard() {
final View activityRootView = findViewById(R.id.mainLayout);
r = new Rect();
activityRootView.getWindowVisibleDisplayFrame(r);
tempHeight = r.bottom;
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
activityRootView.getWindowVisibleDisplayFrame(r);
if(tempHeight == r.bottom){
usernameEdit.setFocusable(false);
passwordEdit.setFocusable(false);
}
}
});
}