Browse Source

added otp and flow

PankajBranch^2
Hemant Khadase 2 years ago
parent
commit
1f05731c2e
6 changed files with 71 additions and 19 deletions
  1. +56
    -8
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt
  2. +9
    -7
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt
  3. +3
    -3
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt
  4. +1
    -1
      app/src/main/res/layout/fragment_otp.xml
  5. +1
    -0
      app/src/main/res/values-hi-rIN/strings.xml
  6. +1
    -0
      app/src/main/res/values/strings.xml

+ 56
- 8
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt View File

@ -11,7 +11,6 @@ import android.widget.EditText
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.R import com.nivesh.production.niveshfd.R
import com.nivesh.production.niveshfd.databinding.FragmentOtpBinding import com.nivesh.production.niveshfd.databinding.FragmentOtpBinding
import com.nivesh.production.niveshfd.databinding.FragmentSignupBinding
import com.nivesh.production.niveshfd.fd.util.Common import com.nivesh.production.niveshfd.fd.util.Common
class OTPFragment : Fragment() { class OTPFragment : Fragment() {
@ -41,19 +40,65 @@ class OTPFragment : Fragment() {
binding.edtOTP1.setOnKeyListener(GenericKeyEvent(binding.edtOTP1, null)) binding.edtOTP1.setOnKeyListener(GenericKeyEvent(binding.edtOTP1, null))
binding.edtOTP2.setOnKeyListener(GenericKeyEvent(binding.edtOTP2, binding.edtOTP1)) binding.edtOTP2.setOnKeyListener(GenericKeyEvent(binding.edtOTP2, binding.edtOTP1))
binding.edtOTP3.setOnKeyListener(GenericKeyEvent(binding.edtOTP3, binding.edtOTP2)) binding.edtOTP3.setOnKeyListener(GenericKeyEvent(binding.edtOTP3, binding.edtOTP2))
binding.edtOTP4.setOnKeyListener(GenericKeyEvent(binding.edtOTP4,binding.edtOTP3))
binding.edtOTP5.setOnKeyListener(GenericKeyEvent(binding.edtOTP5,binding.edtOTP4))
binding.edtOTP6.setOnKeyListener(GenericKeyEvent(binding.edtOTP6,binding.edtOTP5))
binding.edtOTP4.setOnKeyListener(GenericKeyEvent(binding.edtOTP4, binding.edtOTP3))
binding.edtOTP5.setOnKeyListener(GenericKeyEvent(binding.edtOTP5, binding.edtOTP4))
binding.edtOTP6.setOnKeyListener(GenericKeyEvent(binding.edtOTP6, binding.edtOTP5))
binding.btnContinue.setOnClickListener {
if (validate()) {
}
}
} }
private fun validate(): Boolean { private fun validate(): Boolean {
return false;
return if (binding.edtOTP1.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP1,
binding.tlOTP1,
getString(R.string.invalidOTP)
)
} else if (binding.edtOTP2.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP2,
binding.tlOTP2,
getString(R.string.invalidOTP)
)
} else if (binding.edtOTP3.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP3,
binding.tlOTP3,
getString(R.string.invalidOTP)
)
} else if (binding.edtOTP4.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP4,
binding.tlOTP4,
getString(R.string.invalidOTP)
)
} else if (binding.edtOTP5.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP5,
binding.tlOTP5,
getString(R.string.invalidOTP)
)
} else if (binding.edtOTP6.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP6,
binding.tlOTP6,
getString(R.string.invalidOTP)
)
} else {
return true
}
} }
class GenericKeyEvent internal constructor(private val currentView: EditText, private val previousView: EditText?) : View.OnKeyListener{
class GenericKeyEvent internal constructor(
private val currentView: EditText,
private val previousView: EditText?
) : View.OnKeyListener {
override fun onKey(p0: View?, keyCode: Int, event: KeyEvent?): Boolean { override fun onKey(p0: View?, keyCode: Int, event: KeyEvent?): Boolean {
if(event!!.action == KeyEvent.ACTION_DOWN && keyCode == KeyEvent.KEYCODE_DEL && currentView.id != R.id.edtOTP1 && currentView.text.isEmpty()) {
if (event!!.action == KeyEvent.ACTION_DOWN && keyCode == KeyEvent.KEYCODE_DEL && currentView.id != R.id.edtOTP1 && currentView.text.isEmpty()) {
//If current is empty then previous EditText's number will also be deleted //If current is empty then previous EditText's number will also be deleted
previousView!!.text = null previousView!!.text = null
previousView.requestFocus() previousView.requestFocus()
@ -63,7 +108,10 @@ class OTPFragment : Fragment() {
} }
} }
class GenericTextWatcher internal constructor(private val currentView: View, private val nextView: View?) : TextWatcher {
class GenericTextWatcher internal constructor(
private val currentView: View,
private val nextView: View?
) : TextWatcher {
override fun afterTextChanged(editable: Editable) { // TODO Auto-generated method stub override fun afterTextChanged(editable: Editable) { // TODO Auto-generated method stub
val text = editable.toString() val text = editable.toString()
when (currentView.id) { when (currentView.id) {


+ 9
- 7
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt View File

@ -7,10 +7,10 @@ import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.R
import com.nivesh.production.niveshfd.databinding.FragmentSignupBinding import com.nivesh.production.niveshfd.databinding.FragmentSignupBinding
import com.nivesh.production.niveshfd.fd.util.Common import com.nivesh.production.niveshfd.fd.util.Common
class SignUpFragment : Fragment() { class SignUpFragment : Fragment() {
private var _binding: FragmentSignupBinding? = null private var _binding: FragmentSignupBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
@ -38,7 +38,9 @@ class SignUpFragment : Fragment() {
binding.btnSignUp.setOnClickListener { binding.btnSignUp.setOnClickListener {
if (validate()) { if (validate()) {
activity?.supportFragmentManager?.beginTransaction()
?.add(com.nivesh.production.niveshfd.R.id.signUpContainer, OTPFragment())
?.commit()
} }
} }
} }
@ -48,19 +50,19 @@ class SignUpFragment : Fragment() {
Common.commonErrorMethod( Common.commonErrorMethod(
binding.edtMobileNumber, binding.edtMobileNumber,
binding.tlMobileNumber, binding.tlMobileNumber,
getString(R.string.emptyMobileNumber)
getString(com.nivesh.production.niveshfd.R.string.emptyMobileNumber)
) )
} else if (!Common.isIndianMobileNo(binding.edtMobileNumber.text.toString())) { // EditText
} else if (binding.edtMobileNumber.text?.length != 10) { // EditText
Common.commonErrorMethod( Common.commonErrorMethod(
binding.edtMobileNumber, binding.edtMobileNumber,
binding.tlMobileNumber, binding.tlMobileNumber,
getString(R.string.inValidIndianMobileNumber)
getString(com.nivesh.production.niveshfd.R.string.inValidMobileNumber)
) )
} else if (binding.edtMobileNumber.text?.length != 10) { // EditText
}else if (!Common.isIndianMobileNo(binding.edtMobileNumber.text.toString())) { // EditText
Common.commonErrorMethod( Common.commonErrorMethod(
binding.edtMobileNumber, binding.edtMobileNumber,
binding.tlMobileNumber, binding.tlMobileNumber,
getString(R.string.inValidMobileNumber)
getString(com.nivesh.production.niveshfd.R.string.inValidIndianMobileNumber)
) )
} else { } else {
return true return true


+ 3
- 3
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt View File

@ -30,9 +30,9 @@ class StepThreePagerFragment : Fragment() {
(activity as ViewPagerActivity).stepFourApi() (activity as ViewPagerActivity).stepFourApi()
} }
binding.btnNext.setOnClickListener {
(activity as ViewPagerActivity).stepThreeApi()
}
// binding.btnNext.setOnClickListener {
// (activity as ViewPagerActivity).stepThreeApi()
// }
} }
} }

+ 1
- 1
app/src/main/res/layout/fragment_otp.xml View File

@ -7,7 +7,7 @@
android:orientation="vertical"> android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/signUp"
android:id="@+id/btnContinue"
android:layout_marginTop="@dimen/margin_150" android:layout_marginTop="@dimen/margin_150"
android:layout_marginStart="@dimen/margin_15" android:layout_marginStart="@dimen/margin_15"
android:layout_marginEnd="@dimen/margin_15" android:layout_marginEnd="@dimen/margin_15"


+ 1
- 0
app/src/main/res/values-hi-rIN/strings.xml View File

@ -293,6 +293,7 @@
<string name="agreement">Agreement</string> <string name="agreement">Agreement</string>
<string name="upNextHome">Up Next: Home</string> <string name="upNextHome">Up Next: Home</string>
<string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string> <string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string>
<string name="invalidOTP">Please enter valid OTP</string>
</resources> </resources>

+ 1
- 0
app/src/main/res/values/strings.xml View File

@ -300,6 +300,7 @@
<string name="agreement">Agreement</string> <string name="agreement">Agreement</string>
<string name="upNextHome">Up Next: Home</string> <string name="upNextHome">Up Next: Home</string>
<string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string> <string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string>
<string name="invalidOTP">Please enter valid OTP</string>
</resources> </resources>

Loading…
Cancel
Save

Powered by TurnKey Linux.