Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class LoginViewModel extends AndroidViewModel {
- private UserRepository userRepository;
- private MutableLiveData<String> user;
- private MutableLiveData<String> password;
- private MutableLiveData<String> email;
- private MutableLiveData<Resource<User>> userObservable;
- @Inject
- public LoginViewModel(@NonNull Application application){
- super(application);
- this.userRepository = new UserRepository();
- }
- public MutableLiveData<String> getUser() {
- if(user == null)
- user = new MutableLiveData<>();
- return user;
- }
- public MutableLiveData<String> getPassword() {
- if(password == null)
- password = new MutableLiveData<>();
- return password;
- }
- public MutableLiveData<String> getEmail() {
- if(email == null)
- email = new MutableLiveData<>();
- return email;
- }
- public void loginOnClickListener(){
- User user = new User(getUser().getValue(), getPassword().getValue(), getEmail().getValue());
- userRepository.saveUser(user, userObservable);
- }
- }
- @Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- loginViewModel = ViewModelProviders.of(getActivity(), viewModelFactory).get(LoginViewModel.class);
- binding.setLoginViewModel(loginViewModel);
- observeViewModel();
- }
- private void observeViewModel(){
- loginViewModel.getUser().observe(this, user -> {
- String coco = user;
- });
- loginViewModel.getPassword().observe(this, user -> {
- String coco = user;
- });
- loginViewModel.getEmail().observe(this, user -> {
- String coco = user;
- });
- }
- <android.support.design.widget.TextInputLayout
- android:id="@+id/userLayout"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="16dp"
- android:layout_marginRight="16dp"
- android:layout_marginTop="96dp"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent">
- <android.support.design.widget.TextInputEditText
- android:id="@+id/txtUserValue"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="@string/user"
- android:text="@{loginViewModel.user}"
- android:inputType="text"/>
- </android.support.design.widget.TextInputLayout>
- <android.support.design.widget.TextInputLayout
- android:id="@+id/passwordLayout"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="16dp"
- android:layout_marginRight="16dp"
- android:layout_marginTop="8dp"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@+id/userLayout">
- <android.support.design.widget.TextInputEditText
- android:id="@+id/txtPasswordValue"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="@string/password"
- android:text="@{loginViewModel.password}"
- android:inputType="textPassword"/>
- </android.support.design.widget.TextInputLayout>
- <android.support.design.widget.TextInputLayout
- android:id="@+id/emailLayout"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="16dp"
- android:layout_marginRight="16dp"
- android:layout_marginTop="8dp"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@+id/passwordLayout">
- <android.support.design.widget.TextInputEditText
- android:id="@+id/txtEmailValue"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="@string/email"
- android:text="@{loginViewModel.email}"
- android:inputType="textWebEmailAddress"/>
- </android.support.design.widget.TextInputLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement