setOnFocusChangeListener导致“无法解析符号”错误

时间:2015-08-31 12:24:06

标签: android-edittext

在尝试使用'setOnFocusChangeListener'拦截EditText视图获取焦点的事件时,我不断收到'无法解析符号'错误。尝试在这里寻找解决方案以及网上的其他网站。因此在这里发布问题。粘贴下面的代码:

EditText fromDate = (EditText) findViewById(R.id.valid_from);
OnFocusChangeListener lis = new OnFocusChangeListener(){

    @Override
    public void onFocusChange(View v,    boolean hasFocus){
        if (hasFocus ) {
            showDatePicker();
        }
    }
};

fromDate.setOnFocusChangeListener(lis) ;

private void showDatePicker() {
    DatePickerFragment date = new DatePickerFragment();
    /**
     * Set Up Current Date Into dialog
     */
    Calendar calender = Calendar.getInstance();  [..and so on]

我做错了吗?我导入了android.view.View.OnFocusChangeListener;

2 个答案:

答案 0 :(得分:1)

面对同样的问题,我修复了它。

  • 制作你的(活动||片段)Implements OnFocusChangeListener
  • 将您的业务放在onFoacusChange方法中。

    @Override
    public void onFocusChange(View v, boolean hasFocus) {
    if(!hasFocus)
        return;
    switch (v.getId()){
        case R.id.valid_from:
        showDatePicker();
        break;
    }
    }
    

<强>更新

fromDate.setOnFocusChangeListener(this);

答案 1 :(得分:0)

使用View.OnFocusChangeListener()代替OnFocusChangeListener

e.g。

mEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (!hasFocus) { // code to execute when EditText loses focus } } });