Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <LinearLayout
- android:id="@+id/toplinear"
- android:layout_width="match_parent"
- android:layout_below="@id/gif"
- android:layout_margin="10dp"
- android:layout_height="wrap_content"
- android:orientation="vertical">
- <android.support.design.widget.TextInputLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/user_name_text_input"
- android:hint="@string/shr_hint_username">
- <android.support.design.widget.TextInputEditText
- android:layout_width="match_parent"
- android:id="@+id/et_username"
- android:layout_height="wrap_content" />
- </android.support.design.widget.TextInputLayout>
- <android.support.design.widget.TextInputLayout
- android:id="@+id/password_text_input"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="@string/shr_hint_password"
- app:errorEnabled="true">
- <android.support.design.widget.TextInputEditText
- android:id="@+id/et_password"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
- </android.support.design.widget.TextInputLayout>
- <Button
- android:id="@+id/bt_login"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center_horizontal"
- android:text="@string/login" />
- </LinearLayout>
- class LoginActivity : BaseActivity() {
- private lateinit var input_username: String
- private lateinit var input_password: String
- private var mCompositeDisposable: CompositeDisposable? = null
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_login)
- gifImageView.startAnimation()
- navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener)
- bt_login.setOnClickListener {
- hideKeyboard(it)
- input_username = et_username.text.toString()
- input_password = et_password.text.toString()
- if (Validation.isEmptyField(input_username)) {
- user_name_text_input.error = "UserName should not be Empty! "
- } else {
- // Clear the error.
- user_name_text_input.error = null
- }
- if (Validation.isEmptyField(input_password)) {
- password_text_input.error = "Password should not be Empty! "
- } else {
- // Clear the error.
- password_text_input.error = null
- }
- if(input_password.length>0&&input_username.length>0){
- if(isNetworkAvailable()){
- showDialogLoading()
- mCompositeDisposable = CompositeDisposable()
- mCompositeDisposable?.add(ApiRequestClient.createREtrofitInstance().getLogin(input_username, input_password,
- "2017")
- .observeOn(AndroidSchedulers.mainThread())
- .subscribeOn(Schedulers.io())
- .subscribe(this::handleResponse, this::handleError))
- }
- else{
- showSnackBar("No Internet connection")
- }
- }
- }
- et_username.setOnKeyListener { v, keyCode, event ->
- if (!Validation.isEmptyField(et_username.text.toString())) {
- user_name_text_input.error = null
- }
- false
- }
- et_password.setOnKeyListener { v, keyCode, event ->
- if (!Validation.isEmptyField(et_password.text.toString())) {
- password_text_input.error = null
- }
- false
- }
- }
- // handle sucess response of api call
- fun handleResponse(responseFromServer: ResponseFromServer) {
- hideDialogLoading()
- if(responseFromServer.data.status.equals("True")){
- showdialog()
- }
- else{
- showSnackBar(responseFromServer.data.message)
- }
- mCompositeDisposable?.clear()
- }
- // handle failure response of api call
- fun handleError(error: Throwable) {
- hideDialogLoading()
- showSnackBar(error.localizedMessage)
- mCompositeDisposable?.clear()
- }
- private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener { item ->
- when (item.itemId) {
- R.id.navigation_manual -> {
- showToast("ComimgSoon")
- return@OnNavigationItemSelectedListener true
- }
- R.id.navigation_whats_new -> {
- showToast("ComimgSoon")
- return@OnNavigationItemSelectedListener true
- }
- R.id.navigation_more -> {
- showToast("ComimgSoon")
- return@OnNavigationItemSelectedListener true
- }
- }
- false
- }
- fun showdialog() {
- hideKeyboard(password_text_input)
- val dialogBuilder = AlertDialog.Builder(this)
- // set message of alert dialog
- dialogBuilder.setMessage(getString(R.string.remember))
- // if the dialog is cancelable
- .setCancelable(false)
- // positive button text and action
- .setPositiveButton(getString(R.string.proceed), DialogInterface.OnClickListener { dialog, id ->
- BaseApplication.baseApplicationInstance.getdatamanger().setLoggedIn(true)
- launchActivity<HomeActivity>()
- finish()
- })
- // negative button text and action
- .setNegativeButton(getString(R.string.cancel), DialogInterface.OnClickListener { dialog, id ->
- dialog.cancel()
- launchActivity<HomeActivity>()
- finish()
- })
- // create dialog box
- val alert = dialogBuilder.create()
- // show alert dialog
- alert.show()
- }
- }
Add Comment
Please, Sign In to add comment