DataBinderMapperImpl 找不到 ActivityLoginBinding 的符号

DataBinderMapperImpl cannot find symbol for ActivityLoginBinding

我创建了登录 Activity。但是无法生成登录绑定文件。 “错误在 DataBinderMapperImpl 中找不到符号 ActivityLoginBindingImpl。我可以添加什么?它应该自动生成...................... ................................................... 登录Activity: baseactivity

中的一些动作
public class LoginActivity extends BaseActivity<ActivityLoginBinding, LoginViewModel> implements View.OnClickListener, TextView.OnEditorActionListener {

    @Inject
    LoginViewModel loginViewModel;
    ActivityLoginBinding activityLoginBinding = DataBindingUtil.setContentView(this, R.layout.activity_login);


    @Override
    public int getBindingVariable() {
        return BR.viewModelLogin;
    }

    @Override
    public int getLayoutId() {
        return R.layout.activity_login;
    }

    @Override
    public LoginViewModel getViewModel() {
        return  loginViewModel;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        activityLoginBinding = getViewDataBinding();
        loginViewModel.setNavigator(this);
        activityLoginBinding.btnLogin.setOnClickListener(this);


    }
    @Override
    public void handleError(Throwable throwable) {
        // handle error
    }
    @Override
    public void onClick(View v) {
        activityLoginBinding.tvTranData.setText("");

    }
    private void getKeyboardGo(){
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_GO) {
            getKeyboardGo();
            return true;
        }
        return false;
    }
}

activity_login:

  <?xml version="1.0" encoding="utf-8"?>
<layout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".LoginActivity">
    <data>
        <variable
            name="viewModelLogin"
            type="com.pax.e_kent.viewmodel.LoginViewModel" />
    </data>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center">

        <EditText
            android:id="@+id/edtTCKN"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:inputType="numberPassword"
            android:hint="TC Kimlik Numaranız"
            android:text="@={LoginViewModel.mTCKN}"
            android:focusable="true"
            android:imeOptions="actionNext"
            android:maxLength="11"
            android:textColor="@android:color/black"
            android:textColorHint="@android:color/darker_gray"
            android:textSize="20sp"
            tools:layout_editor_absoluteX="101dp"
            tools:layout_editor_absoluteY="203dp" />

        <EditText
            android:id="@+id/edtPassword"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:ems="10"
            android:inputType="numberPassword"
            android:hint="Şifreniz"
            android:text="@={LoginViewModel.mPassword}"
            android:focusable="true"
            android:imeOptions="actionGo"
            android:textColor="@android:color/black"
            android:textColorHint="@android:color/darker_gray"
            android:textSize="20sp"
            tools:layout_editor_absoluteX="100dp"
            tools:layout_editor_absoluteY="273dp" />

        <Button
            android:id="@+id/btnLogin"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/button_verify"
            android:textColor="@drawable/custom_btn_text_color"
            android:textSize="18sp"
            android:layout_marginTop="10dp"
            android:text="Giriş"
            android:onClick="@{(v) -> LoginViewModel.onClick(v)}"
            tools:layout_editor_absoluteX="161dp"
            tools:layout_editor_absoluteY="362dp" />
    <TextView
        android:id="@+id/tv_tranData"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    </TextView></LinearLayout>
</layout>

LoginViewModel:我创建了 LoginUser 模型 ............................................... ......

public class LoginViewModel extends BaseViewModel<BaseNavigator> {
    public MutableLiveData<String> mTCKN =new MutableLiveData<>();
    public MutableLiveData<String > mPassword =new MutableLiveData<>();

    private MutableLiveData<LoginUser> userMutableLiveData;

    public MutableLiveData<LoginUser> getUser(){
        if (userMutableLiveData == null) {
            userMutableLiveData = new MutableLiveData<>();
        }
        return userMutableLiveData;
    }
    public void onClick(View view) {

        LoginUser loginUser = new LoginUser(mTCKN.getValue(), mPassword.getValue());

        userMutableLiveData.setValue(loginUser);

    }
}

问题出在您布局的按钮中。您尝试以 static 的身份访问 LoginViewModel 方法。检查以下内容:

使用

android:onClick="@{(v) -> viewModelLogin.onClick(v)}"

而不是

android:onClick="@{(v) -> LoginViewModel.onClick(v)}"