11 Commits

Author SHA1 Message Date
  Hemant Khadase 4a4eeb6e0e synched with HemantBranch 2 years ago
  Hemant Khadase 2a2756b9b2 added code for getstarted 2 years ago
  Hemant Khadase 8935fe3e26 added missing code of pankaj 2 years ago
  Hemant Khadase 8464196560 added getstarted screen 2 years ago
  Hemant Khadase e496b2da92 added flow upto otp 2 years ago
  Hemant Khadase 307701d89a added indicator code 2 years ago
  Hemant Khadase d34a651242 added code 2 years ago
  Hemant Khadase 1f05731c2e added otp and flow 2 years ago
  Hemant Khadase 4d0ccce126 indicator code added 2 years ago
  Hemant Khadase bd3bc4d07a working on almostthere screen 2 years ago
  Hemant Khadase c3efb29cdf added almost there screen 2 years ago
40 changed files with 1470 additions and 242 deletions
Split View
  1. +12
    -0
      app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt
  2. +3
    -0
      app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt
  3. +35
    -1
      app/src/main/java/com/nivesh/production/niveshfd/fd/util/Common.kt
  4. +1
    -1
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/adapters1/SectionsPagerAdapter1.kt
  5. +13
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/BasActivity.kt
  6. +51
    -13
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt
  7. +30
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt
  8. +12
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt
  9. +192
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/AlmostThereFragment.kt
  10. +47
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/BaseFragment.kt
  11. +64
    -0
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/GetStartedFragment.kt
  12. +75
    -9
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/OTPFragment.kt
  13. +20
    -9
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/SignUpFragment.kt
  14. +2
    -2
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepThreePagerFragment.kt
  15. +1
    -1
      app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/StepTwoPagerFragment.kt
  16. +7
    -0
      app/src/main/res/anim/slide_down.xml
  17. +4
    -0
      app/src/main/res/anim/slide_up.xml
  18. +13
    -0
      app/src/main/res/drawable/default_pager_dot.xml
  19. BIN
      app/src/main/res/drawable/pager_1.png
  20. BIN
      app/src/main/res/drawable/pager_2.png
  21. BIN
      app/src/main/res/drawable/pager_3.png
  22. +9
    -0
      app/src/main/res/drawable/round_corner_top.xml
  23. +13
    -0
      app/src/main/res/drawable/selected_pager_dot.xml
  24. BIN
      app/src/main/res/drawable/signup.png
  25. +12
    -0
      app/src/main/res/drawable/svg_indicator_bg.xml
  26. +7
    -0
      app/src/main/res/drawable/tab_pager_selector.xml
  27. +1
    -1
      app/src/main/res/layout/activity_register.xml
  28. +29
    -44
      app/src/main/res/layout/activity_viewpager.xml
  29. +398
    -0
      app/src/main/res/layout/fragment_almost_there.xml
  30. +158
    -53
      app/src/main/res/layout/fragment_otp.xml
  31. +14
    -20
      app/src/main/res/layout/fragment_pager_step_one.xml
  32. +47
    -27
      app/src/main/res/layout/fragment_pager_step_three.xml
  33. +45
    -40
      app/src/main/res/layout/fragment_pager_step_two.xml
  34. +5
    -20
      app/src/main/res/layout/fragment_signup.xml
  35. +28
    -0
      app/src/main/res/layout/web_view_bottom_dialog.xml
  36. +27
    -0
      app/src/main/res/values-hi-rIN/strings.xml
  37. +4
    -0
      app/src/main/res/values/colors.xml
  38. +6
    -0
      app/src/main/res/values/dimens.xml
  39. +28
    -1
      app/src/main/res/values/strings.xml
  40. +57
    -0
      app/src/main/res/values/style.xml

+ 12
- 0
app/src/main/java/com/nivesh/production/niveshfd/fd/db/PreferenceManager.kt View File

@ -17,6 +17,8 @@ open class PreferenceManager(context: Context) : IPreferenceHelper {
const val KEY_CLIENT_CODE = "ClientCode"
const val KEY_GET_TOKEN = "GetToken"
const val CLIENT_LANGUAGE = "LANGUAGE"
const val ISFIRST_TIME = "IS FIRST TIME"
}
@ -86,6 +88,16 @@ open class PreferenceManager(context: Context) : IPreferenceHelper {
}
override fun setIsFirstTime(appName: Boolean) {
preferences[ISFIRST_TIME] = appName
}
override fun getFirstTime(): Boolean {
return preferences[ISFIRST_TIME] ?: false
}
override fun clearPrefs() {
preferences.edit().clear().apply()
}


+ 3
- 0
app/src/main/java/com/nivesh/production/niveshfd/fd/interfaces/IPreferenceHelper.kt View File

@ -26,5 +26,8 @@ interface IPreferenceHelper {
fun setLanguage(appName: String)
fun getLanguage(): String
fun setIsFirstTime(appName: Boolean)
fun getFirstTime(): Boolean
fun clearPrefs()
}

+ 35
- 1
app/src/main/java/com/nivesh/production/niveshfd/fd/util/Common.kt View File

@ -4,11 +4,13 @@ import android.Manifest
import android.annotation.SuppressLint
import android.app.Activity
import android.app.AlertDialog
import android.app.Dialog
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.Color
import android.graphics.drawable.GradientDrawable
import android.hardware.display.DisplayManager
import android.net.ConnectivityManager
import android.net.NetworkCapabilities
import android.net.Uri
@ -17,9 +19,19 @@ import android.provider.Settings
import android.telephony.TelephonyManager
import android.text.TextUtils
import android.text.format.DateFormat
import android.util.DisplayMetrics
import android.util.Log
import android.util.Patterns
import android.view.Display
import android.view.Gravity
import android.view.Window
import android.webkit.WebView
import android.webkit.WebViewClient
import android.widget.ImageView
import androidx.appcompat.app.ActionBar
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat.getSystemService
import androidx.core.hardware.display.DisplayManagerCompat
import com.google.android.material.textfield.MaterialAutoCompleteTextView
import com.google.android.material.textfield.TextInputEditText
import com.google.android.material.textfield.TextInputLayout
@ -136,6 +148,29 @@ class Common {
builder.show()
}
fun showWebViewDialogBottom(context: Context, url: String,height: Int){
val dialog = Dialog(context)
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
dialog.setContentView(R.layout.web_view_bottom_dialog)
val webView: WebView = dialog.findViewById(R.id.webView)
val imageCross: ImageView = dialog.findViewById(R.id.imageCross)
imageCross.setOnClickListener {
dialog.dismiss()
}
webView.isScrollbarFadingEnabled = false
webView.isHorizontalScrollBarEnabled = false
webView.settings.javaScriptEnabled = true
webView.settings.userAgentString = "AndroidWebView"
webView.clearCache(true)
webView.loadUrl(url)
dialog.show()
val window: Window = dialog.window!!
window.setGravity(Gravity.BOTTOM)
window.setLayout(ActionBar.LayoutParams.MATCH_PARENT,(height-400))
window.setWindowAnimations(R.style.DialogBottomAnimation)
}
fun showDialogWithTwoButtons(activity: Activity?, message: CharSequence?, title: String) {
val builder = AlertDialog.Builder(activity)
builder.setTitle(title)
@ -371,6 +406,5 @@ class Common {
}
return deviceInfo
}
}
}

+ 1
- 1
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/adapters1/SectionsPagerAdapter1.kt View File

@ -13,6 +13,6 @@ class SectionsPagerAdapter1(manager: FragmentManager, private val fragments: Arr
override fun getCount(): Int = fragments.size
override fun getPageTitle(position: Int): CharSequence = titles[position]
// override fun getPageTitle(position: Int): CharSequence = titles[position]
}

+ 13
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/BasActivity.kt View File

@ -0,0 +1,13 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.activities1
import android.app.Activity
import android.os.Bundle
class BasActivity : Activity() {
lateinit var mActivity : Activity
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mActivity = this;
}
}

+ 51
- 13
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/RegisterActivity.kt View File

@ -1,13 +1,15 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.activities1
import android.content.Intent
import android.os.Build
import android.os.Bundle
import android.text.Editable
import android.text.TextWatcher
import com.nivesh.production.niveshfd.databinding.ActivityLoginBinding
import android.util.DisplayMetrics
import android.view.Display
import androidx.core.hardware.display.DisplayManagerCompat
import com.nivesh.production.niveshfd.databinding.ActivityRegisterBinding
import com.nivesh.production.niveshfd.fd.db.PreferenceManager
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
import com.nivesh.production.niveshfd.fd.util.Common
import com.nivesh.production.niveshfd.fd.util.Common.Companion.showWebViewDialogBottom
class RegisterActivity : BaseActivity() {
lateinit var binding: ActivityRegisterBinding
@ -23,22 +25,58 @@ class RegisterActivity : BaseActivity() {
setContentView(this.root)
}
binding.imgInfo.setOnClickListener{
binding.imgInfo.setOnClickListener {
}
binding.btnInvestor.setOnClickListener{
intent = Intent(this@RegisterActivity, RegisterActivity::class.java)
binding.btnInvestor.setOnClickListener {
intent = Intent(this@RegisterActivity, RegisterActivity::class.java)
startActivity(intent)
}
binding.btnDistributor.setOnClickListener{
intent = Intent(this@RegisterActivity, RegisterActivity::class.java)
startActivity(intent)
binding.btnDistributor.setOnClickListener {
if (!PreferenceManager(this@RegisterActivity).getFirstTime()){
intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java)
intent.putExtra("type", 4)
startActivity(intent)
}else{
intent = Intent(this@RegisterActivity, SignUpActivity::class.java)
intent.putExtra("type", 4)
startActivity(intent)
}
}
binding.btnReferrer.setOnClickListener{
intent = Intent(this@RegisterActivity, RegisterActivity::class.java)
startActivity(intent)
binding.btnReferrer.setOnClickListener {
if (!PreferenceManager(this@RegisterActivity).getFirstTime()){
intent = Intent(this@RegisterActivity, ViewPagerActivity::class.java)
intent.putExtra("type", 3)
startActivity(intent)
}else{
intent = Intent(this@RegisterActivity, SignUpActivity::class.java)
intent.putExtra("type", 3)
startActivity(intent)
}
}
binding.imgInfo.setOnClickListener {
showWebViewDialogBottom(
this@RegisterActivity,
"https://smallbusiness.chron.com/create-dummy-webpage-51199.html",
getScreenHeight()
)
}
}
private fun getScreenHeight(): Int {
val height: Int = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
val defaultDisplay =
DisplayManagerCompat.getInstance(this).getDisplay(Display.DEFAULT_DISPLAY)
val displayContext = createDisplayContext(defaultDisplay!!)
displayContext.resources.displayMetrics.heightPixels
} else {
val displayMetrics = DisplayMetrics()
@Suppress("DEPRECATION")
windowManager.defaultDisplay.getMetrics(displayMetrics)
displayMetrics.heightPixels
}
return height
}
}

+ 30
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/SignUpActivity.kt View File

@ -1,6 +1,9 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.activities1
import android.os.Build
import android.os.Bundle
import android.window.OnBackInvokedDispatcher
import androidx.activity.OnBackPressedCallback
import com.nivesh.production.niveshfd.R
import com.nivesh.production.niveshfd.databinding.ActivitySignupBinding
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
@ -9,6 +12,7 @@ import com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1.SignUpFrag
class SignUpActivity : BaseActivity() {
lateinit var binding: ActivitySignupBinding
var type : Int? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -16,6 +20,8 @@ class SignUpActivity : BaseActivity() {
}
private fun init() {
type = intent.getIntExtra("type", 0);
binding = ActivitySignupBinding.inflate(layoutInflater)
binding.apply {
setContentView(this.root)
@ -25,6 +31,30 @@ class SignUpActivity : BaseActivity() {
.commit()
}
@Deprecated("Deprecated in Java")
override fun onBackPressed() {
if (Build.VERSION.SDK_INT >= 33) {
onBackInvokedDispatcher.registerOnBackInvokedCallback(
OnBackInvokedDispatcher.PRIORITY_DEFAULT
) {
exitOnBackPressed()
}
} else {
onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) {
override fun handleOnBackPressed() {
exitOnBackPressed()
}
})
}
}
private fun exitOnBackPressed() {
if (isTaskRoot) {
finish()
} else {
}
}
}

+ 12
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/activities1/ViewPagerActivity.kt View File

@ -5,6 +5,7 @@ import android.os.Bundle
import androidx.fragment.app.Fragment
import androidx.viewpager.widget.ViewPager
import com.nivesh.production.niveshfd.databinding.ActivityViewpagerBinding
import com.nivesh.production.niveshfd.fd.db.PreferenceManager
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
import com.nivesh.production.niveshfd.partnerOnBoarding.adapters1.DisableAdapter1
import com.nivesh.production.niveshfd.partnerOnBoarding.adapters1.SectionsPagerAdapter1
@ -19,6 +20,7 @@ class ViewPagerActivity : BaseActivity() {
private val stepOnePagerFragment = StepOnePagerFragment()
private val stepTwoPagerFragment = StepTwoPagerFragment()
private val stepThreePagerFragment = StepThreePagerFragment()
var type : Int? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
init()
@ -33,6 +35,10 @@ class ViewPagerActivity : BaseActivity() {
}
private fun setViewPager() {
PreferenceManager(this@ViewPagerActivity).setIsFirstTime(true)
type = intent.getIntExtra("type", 0);
fragments = arrayOf(
stepOnePagerFragment,
stepTwoPagerFragment,
@ -44,6 +50,7 @@ class ViewPagerActivity : BaseActivity() {
viewPager.adapter = sectionsPagerAdapter
viewPager.setPagingEnabled(false)
viewPager.offscreenPageLimit = 3
binding.tabDots.setupWithViewPager(viewPager)
viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrolled(
position: Int,
@ -71,6 +78,10 @@ class ViewPagerActivity : BaseActivity() {
}
})
binding.tvSkip.setOnClickListener{
stepFourApi()
}
}
// step 1 response
@ -91,6 +102,7 @@ class ViewPagerActivity : BaseActivity() {
// step 4 response
fun stepFourApi() {
intent = Intent(this@ViewPagerActivity, SignUpActivity::class.java)
intent.putExtra("type", type)
startActivity(intent)
}

+ 192
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/AlmostThereFragment.kt View File

@ -0,0 +1,192 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1
import android.os.Bundle
import android.text.Editable
import android.text.TextWatcher
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.databinding.FragmentAlmostThereBinding
import com.nivesh.production.niveshfd.fd.util.Common
class AlmostThereFragment : Fragment() {
private var _binding: FragmentAlmostThereBinding? = null
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
): View {
_binding = FragmentAlmostThereBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
init()
}
private fun init() {
binding.edtDay.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlDay)
}
})
binding.edtMonth.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlMonth)
}
})
binding.edtYear.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlYear)
}
})
binding.edtFullName.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlFullName)
}
})
binding.edtEmail.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlEmail)
}
})
binding.edtAddressLine1.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlAddressLine1)
}
})
binding.edtPinCode.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
Common.removeError(binding.tlPinCode)
}
})
binding.spCity.setOnClickListener {
}
binding.spState.setOnClickListener {
}
binding.cbCheck.setOnClickListener {
}
binding.tvTermsAndCondition.setOnClickListener{
}
binding.tvPrivacyPolicy.setOnClickListener{
}
binding.tvAgreement.setOnClickListener{
}
binding.btnBack.setOnClickListener {
}
binding.btnNext.setOnClickListener {
if (validate()) {
// submit
}
}
}
private fun validate(): Boolean {
return if (binding.edtDay.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtDay,
binding.tlDay,
""
)
} else if (binding.edtMonth.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtMonth,
binding.tlMonth,
""
)
} else if (binding.edtYear.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtYear,
binding.tlYear,
""
)
} else if (binding.edtFullName.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtFullName,
binding.tlFullName,
""
)
} else if (binding.edtEmail.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtFullName,
binding.tlFullName,
""
)
} else if (!Common.isValidEmail(binding.edtEmail.text.toString())) { // EditText
Common.commonErrorMethod(
binding.edtFullName,
binding.tlFullName,
""
)
} else if (binding.edtAddressLine1.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtAddressLine1,
binding.tlAddressLine1,
""
)
} else if (binding.edtPinCode.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtPinCode,
binding.tlPinCode,
""
)
} else if (binding.edtPinCode.text.toString().length != 6) { // EditText
Common.commonErrorMethod(
binding.edtPinCode,
binding.tlPinCode,
""
)
} else if (binding.spCity.text.toString().isEmpty()) { // EditText
Common.commonSpinnerErrorMethod(
binding.spCity,
binding.tlCity,
""
)
} else if (binding.spState.text.toString().isEmpty()) { // EditText
Common.commonSpinnerErrorMethod(
binding.spState,
binding.tlState,
""
)
}else if (!binding.cbCheck.isChecked) { // EditText
return false
} else {
return true
}
}
}

+ 47
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/BaseFragment.kt View File

@ -0,0 +1,47 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1
import android.app.Activity
import android.content.Context
import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
open class BaseFragment : Fragment() {
private lateinit var mActivity: Activity
override fun onAttach(context: Context) {
super.onAttach(context)
mActivity = context as BaseActivity
}
companion object {
fun addFragment(
activity: BaseActivity,
containerViewId: Int,
fragment: Fragment,
tag: String,
addToBackStack: Boolean
) {
val fragmentTransaction = activity.supportFragmentManager.beginTransaction()
fragmentTransaction.add(containerViewId, fragment, tag)
if (addToBackStack) {
fragmentTransaction.addToBackStack(tag)
}
fragmentTransaction.commit()
}
fun replaceFragment(
activity: BaseActivity,
containerViewId: Int,
fragment: Fragment,
tag: String,
addToBackStack: Boolean
) {
val fragmentTransaction = activity.supportFragmentManager.beginTransaction()
fragmentTransaction.replace(containerViewId, fragment, tag)
if (addToBackStack) {
fragmentTransaction.addToBackStack(tag)
}
fragmentTransaction.commit()
}
}
}

+ 64
- 0
app/src/main/java/com/nivesh/production/niveshfd/partnerOnBoarding/ui/fragments1/GetStartedFragment.kt View File

@ -0,0 +1,64 @@
package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1
import android.os.Build.VERSION_CODES.R
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.nivesh.production.niveshfd.databinding.FragmentGetStartedBinding
import com.nivesh.production.niveshfd.databinding.FragmentOtpBinding
private const val ARG_PARAM1 = "param1"
private const val ARG_PARAM2 = "param2"
class GetStartedFragment : BaseFragment() {
// TODO: Rename and change types of parameters
private var param1: String? = null
private var param2: String? = null
private var _binding: FragmentGetStartedBinding? = null
private val binding get() = _binding!!
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {
param1 = it.getString(ARG_PARAM1)
param2 = it.getString(ARG_PARAM2)
}
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
// Inflate the layout for this fragment
_binding = FragmentGetStartedBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
init()
}
private fun init() {
}
companion object {
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment GetStarted.
*/
// TODO: Rename and change types and number of parameters
@JvmStatic
fun newInstance(param1: String, param2: String) =
GetStartedFragment().apply {
arguments = Bundle().apply {
putString(ARG_PARAM1, param1)
putString(ARG_PARAM2, param2)
}
}
}
}

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

@ -2,6 +2,7 @@ package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1
import android.os.Bundle
import android.text.Editable
import android.text.InputFilter
import android.text.TextWatcher
import android.view.KeyEvent
import android.view.LayoutInflater
@ -11,10 +12,10 @@ import android.widget.EditText
import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.R
import com.nivesh.production.niveshfd.databinding.FragmentOtpBinding
import com.nivesh.production.niveshfd.databinding.FragmentSignupBinding
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
import com.nivesh.production.niveshfd.fd.util.Common
class OTPFragment : Fragment() {
class OTPFragment : BaseFragment() {
private var _binding: FragmentOtpBinding? = null
private val binding get() = _binding!!
@ -31,6 +32,14 @@ class OTPFragment : Fragment() {
}
private fun init() {
binding.edtOTP1.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP2.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP3.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP4.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP5.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP6.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(1))
binding.edtOTP1.addTextChangedListener(GenericTextWatcher(binding.edtOTP1, binding.edtOTP2))
binding.edtOTP2.addTextChangedListener(GenericTextWatcher(binding.edtOTP2, binding.edtOTP3))
binding.edtOTP3.addTextChangedListener(GenericTextWatcher(binding.edtOTP3, binding.edtOTP4))
@ -41,19 +50,72 @@ class OTPFragment : Fragment() {
binding.edtOTP1.setOnKeyListener(GenericKeyEvent(binding.edtOTP1, null))
binding.edtOTP2.setOnKeyListener(GenericKeyEvent(binding.edtOTP2, binding.edtOTP1))
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.txtDigit.text = getString(R.string.sixDigitOTP).plus(" ").plus("+91.00000.00000")
binding.txtResendOTP.setOnClickListener{
}
binding.btnSubmit.setOnClickListener {
if (validate()) {
replaceFragment(activity as BaseActivity, R.id.signUpContainer,GetStartedFragment(),"GET STARTED", true)
}
}
}
private fun validate(): Boolean {
return false;
return if (binding.edtOTP1.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP1,
binding.tlOTP1,
""
)
} else if (binding.edtOTP2.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP2,
binding.tlOTP2,
""
)
} else if (binding.edtOTP3.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP3,
binding.tlOTP3,
""
)
} else if (binding.edtOTP4.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP4,
binding.tlOTP4,
""
)
} else if (binding.edtOTP5.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP5,
binding.tlOTP5,
""
)
} else if (binding.edtOTP6.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtOTP6,
binding.tlOTP6,
""
)
} 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 {
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
previousView!!.text = null
previousView.requestFocus()
@ -63,7 +125,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
val text = editable.toString()
when (currentView.id) {
@ -95,4 +160,5 @@ class OTPFragment : Fragment() {
}
}

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

@ -2,19 +2,21 @@ package com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1
import android.os.Bundle
import android.text.Editable
import android.text.InputFilter
import android.text.TextWatcher
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.nivesh.production.niveshfd.R
import com.nivesh.production.niveshfd.databinding.FragmentSignupBinding
import com.nivesh.production.niveshfd.fd.ui.activity.BaseActivity
import com.nivesh.production.niveshfd.fd.util.Common
class SignUpFragment : Fragment() {
class SignUpFragment : BaseFragment() {
private var _binding: FragmentSignupBinding? = null
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
): View {
@ -28,6 +30,7 @@ class SignUpFragment : Fragment() {
}
private fun init() {
binding.edtMobileNumber.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(10))
binding.edtMobileNumber.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
@ -38,33 +41,41 @@ class SignUpFragment : Fragment() {
binding.btnSignUp.setOnClickListener {
if (validate()) {
replaceFragment(
activity as BaseActivity,
com.nivesh.production.niveshfd.R.id.signUpContainer,
OTPFragment(),
"OTP",
true
)
}
}
}
private fun validate(): Boolean {
return if (binding.edtMobileNumber.text.toString().isEmpty()) { // EditText
Common.commonErrorMethod(
binding.edtMobileNumber,
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(
binding.edtMobileNumber,
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(
binding.edtMobileNumber,
binding.tlMobileNumber,
getString(R.string.inValidMobileNumber)
getString(com.nivesh.production.niveshfd.R.string.inValidIndianMobileNumber)
)
} else {
return true
}
}
}

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

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

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

@ -30,7 +30,7 @@ class StepTwoPagerFragment : Fragment() {
(activity as ViewPagerActivity).stepThreeApi()
}
binding.btnBack.setOnClickListener {
(activity as ViewPagerActivity).stepTwoApi()
(activity as ViewPagerActivity).stepOneApi()
}
}
}

+ 7
- 0
app/src/main/res/anim/slide_down.xml View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="1000"
android:fromYDelta="0"
android:toYDelta="100%" />
</set>

+ 4
- 0
app/src/main/res/anim/slide_up.xml View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="50%p" android:toYDelta="0%p"
android:duration="@android:integer/config_longAnimTime"/>

+ 13
- 0
app/src/main/res/drawable/default_pager_dot.xml View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape
android:innerRadius="0dp"
android:shape="ring"
android:thickness="10dp"
android:useLevel="false">
<stroke android:width="@dimen/margin_2" android:color="@color/red"/>
<solid android:color="@android:color/white"/>
</shape>
</item>
</layer-list>

BIN
app/src/main/res/drawable/pager_1.png View File

Before After
Width: 375  |  Height: 775  |  Size: 341 KiB

BIN
app/src/main/res/drawable/pager_2.png View File

Before After
Width: 375  |  Height: 784  |  Size: 252 KiB

BIN
app/src/main/res/drawable/pager_3.png View File

Before After
Width: 375  |  Height: 770  |  Size: 329 KiB

+ 9
- 0
app/src/main/res/drawable/round_corner_top.xml View File

@ -0,0 +1,9 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/white" />
<stroke android:width="1dp" android:color="@color/greyColor1" />
<padding android:left="15dp" android:top="15dp" android:right="15dp" android:bottom="10dp" />
<corners android:topLeftRadius="36dp"
android:topRightRadius="36dp"
android:bottomLeftRadius="1dp"
android:bottomRightRadius="1dp"/>
</shape>

+ 13
- 0
app/src/main/res/drawable/selected_pager_dot.xml View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape
android:innerRadius="0dp"
android:shape="ring"
android:thickness="@dimen/margin_10"
android:useLevel="false">
<solid android:color="@color/red" />
</shape>
</item>
</layer-list>

BIN
app/src/main/res/drawable/signup.png View File

Before After
Width: 745  |  Height: 912  |  Size: 370 KiB

+ 12
- 0
app/src/main/res/drawable/svg_indicator_bg.xml View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="75dp"
android:height="19dp"
android:viewportWidth="75"
android:viewportHeight="19">
<path
android:fillColor="#ffffff"
android:fillAlpha="0.7"
android:pathData="M 9.5 0 L 65.5 0 Q 75 0 75 9.5 L 75 9.5 Q 75 19 65.5 19 L 9.5 19 Q 0 19 0 9.5 L 0 9.5 Q 0 0 9.5 0 Z" />
</vector>

+ 7
- 0
app/src/main/res/drawable/tab_pager_selector.xml View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/selected_pager_dot"
android:state_selected="true" />
<item android:drawable="@drawable/default_pager_dot"/>
</selector>

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

@ -50,7 +50,7 @@
android:id="@+id/txtAccount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_20"
android:layout_marginStart="@dimen/margin_15"
android:layout_marginTop="@dimen/margin_15"
android:maxLines="2"
android:padding="@dimen/margin_5"


+ 29
- 44
app/src/main/res/layout/activity_viewpager.xml View File

@ -1,49 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
android:layout_gravity="center_horizontal"
android:background="@color/greyColor4">
<LinearLayout
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/red"
android:orientation="horizontal">
<ImageView
android:id="@+id/imgBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/margin_15"
android:layout_marginEnd="@dimen/margin_15"
android:contentDescription="@string/back"
android:gravity="center"
android:padding="@dimen/margin_10"
android:src="@drawable/svg_back" />
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?actionBarSize"
android:padding="@dimen/margin_16"
android:text="@string/fd"
android:textAppearance="@style/TextAppearance.Widget.AppCompat.Toolbar.Title"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14" />
</LinearLayout>
</com.google.android.material.appbar.AppBarLayout>
android:layout_height="match_parent"
android:orientation="vertical">
<com.nivesh.production.niveshfd.partnerOnBoarding.adapters1.DisableAdapter1
android:id="@+id/viewPager1"
@ -52,5 +12,30 @@
android:contentDescription="@string/viewpager"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<com.google.android.material.tabs.TabLayout
android:id="@+id/tabDots"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/svg_indicator_bg"
app:tabBackground="@drawable/tab_pager_selector"
app:tabGravity="center"
app:tabMinWidth="@dimen/margin_50"
android:clipToPadding="false"
android:paddingLeft="@dimen/margin_20"
android:paddingRight="@dimen/margin_20"
app:tabIndicator="@null"
android:layout_centerHorizontal="true"
android:layout_marginBottom="@dimen/margin_70"
android:layout_alignParentBottom="true" />
<TextView
android:id="@+id/tvSkip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:layout_alignParentEnd="true"
android:layout_marginTop="@dimen/margin_20"
android:layout_marginEnd="@dimen/margin_20"
android:text="@string/skip"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</RelativeLayout>

+ 398
- 0
app/src/main/res/layout/fragment_almost_there.xml View File

@ -0,0 +1,398 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tool="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/margin_100"
android:fillViewport="true"
android:padding="@dimen/margin_15"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/signUp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/margin_10"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent">
<TextView
android:id="@+id/txtSignUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="2"
android:padding="@dimen/margin_5"
android:text="@string/almostThere"
android:textColor="@color/black"
android:textSize="@dimen/text_size_20"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/btnReferrer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_15"
android:text="@string/moreInfo"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/txtSignUp" />
<!-- Day -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlDay"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="@dimen/margin_100"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_15"
android:hint="@string/day"
android:padding="@dimen/margin_3"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btnReferrer">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtDay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:digits="@string/number"
android:inputType="number"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!-- Month -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlMonth"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="@dimen/margin_100"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_5"
android:layout_marginTop="@dimen/margin_15"
android:hint="@string/month"
android:padding="@dimen/margin_3"
app:layout_constraintStart_toEndOf="@+id/tlDay"
app:layout_constraintTop_toBottomOf="@+id/btnReferrer">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtMonth"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:digits="@string/number"
android:inputType="number"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!-- Year -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlYear"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="@dimen/margin_150"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_5"
android:layout_marginTop="@dimen/margin_15"
android:hint="@string/year"
android:padding="@dimen/margin_3"
app:layout_constraintStart_toEndOf="@+id/tlMonth"
app:layout_constraintTop_toBottomOf="@+id/btnReferrer">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtYear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:digits="@string/number"
android:inputType="number"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--Full Name -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlFullName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/fullName"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlDay">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtFullName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:digits="@string/onlyAlphabets"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--Email -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlEmail"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/Email"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlFullName">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--Address Line 1 -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlAddressLine1"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/AddressLine1"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlEmail">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtAddressLine1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--Address Line 2 -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlAddressLine2"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/addressLine2"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlAddressLine1">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtAddressLine2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--PinCode -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlPinCode"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/pinCode"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlAddressLine2">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtPinCode"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number"
android:digits="@string/number"
android:maxLength="6"
android:maxLines="1"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--City -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlCity"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/city"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlPinCode">
<com.google.android.material.textfield.MaterialAutoCompleteTextView
android:id="@+id/spCity"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="none"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<!--State -->
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlState"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:hint="@string/state"
android:padding="@dimen/margin_3"
app:layout_constraintTop_toBottomOf="@+id/tlCity">
<com.google.android.material.textfield.MaterialAutoCompleteTextView
android:id="@+id/spState"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
</com.google.android.material.textfield.TextInputLayout>
<CheckBox
android:id="@+id/cbCheck"
android:layout_width="@dimen/margin_48"
android:layout_height="@dimen/margin_48"
android:layout_marginTop="@dimen/margin_20"
android:layout_marginEnd="@dimen/margin_25"
android:buttonTint="@color/black"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tlState" />
<TextView
android:id="@+id/byClicking"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_45"
android:layout_marginTop="@dimen/margin_25"
android:text="@string/byClicking"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/cbCheck"
app:layout_constraintTop_toBottomOf="@id/tlState" />
<TextView
android:id="@+id/tvTermsAndCondition"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:layout_marginStart="@dimen/margin_45"
android:text="@string/terms_and_conditions"
android:textColor="@color/blue1"
app:layout_constraintStart_toEndOf="@+id/tvPrivacyPolicy"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/byClicking" />
<TextView
android:id="@+id/tvPrivacyPolicy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:layout_marginStart="@dimen/margin_5"
android:text="@string/privacyPolicy"
android:textColor="@color/blue1"
app:layout_constraintStart_toEndOf="@+id/tvTermsAndCondition"
app:layout_constraintTop_toBottomOf="@id/byClicking" />
<TextView
android:id="@+id/tvAnd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_5"
android:layout_marginTop="@dimen/margin_5"
android:text="@string/and"
app:layout_constraintStart_toEndOf="@+id/tvPrivacyPolicy"
app:layout_constraintTop_toBottomOf="@id/byClicking"/>
<TextView
android:id="@+id/tvAgreement"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:layout_marginStart="@dimen/margin_45"
android:text="@string/agreement"
android:textColor="@color/blue1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvTermsAndCondition"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>
<com.google.android.material.button.MaterialButton
android:id="@+id/btnBack"
android:layout_width="@dimen/margin_120"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_20"
android:layout_marginBottom="@dimen/margin_35"
android:backgroundTint="@color/white"
android:text="@string/back"
android:textColor="@color/red"
app:cornerRadius="@dimen/margin_15"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:layout_width="@dimen/margin_200"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_30"
android:layout_marginEnd="@dimen/margin_20"
android:layout_marginBottom="@dimen/margin_35"
android:backgroundTint="@color/red"
android:text="@string/next"
android:textColor="@color/white"
app:cornerRadius="@dimen/margin_15"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/btnBack" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_150"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginBottom="@dimen/margin_20"
app:layout_constraintTop_toBottomOf="@+id/btnNext"
android:text="@string/upNextHome"
app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>

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

@ -4,15 +4,15 @@
xmlns:tool="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/containerOTP"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/signUp"
android:layout_marginTop="@dimen/margin_150"
android:layout_marginStart="@dimen/margin_15"
android:layout_marginEnd="@dimen/margin_15"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="@dimen/margin_10"
android:layout_marginTop="@dimen/margin_150"
android:layout_marginEnd="@dimen/margin_10"
android:orientation="vertical"
app:layout_constraintTop_toTopOf="parent">
@ -21,7 +21,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="@dimen/margin_5"
android:text="We sent a code to your mobile number"
android:text="@string/mobNoText"
android:textColor="@color/black"
android:textSize="@dimen/text_size_20"
android:textStyle="bold"
@ -33,153 +33,258 @@
android:id="@+id/txtDigit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_10"
android:layout_marginTop="@dimen/margin_5"
android:text="Enter the 6-digit verification code sent to +91-00000-00000"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/txtSignUp" />
<androidx.constraintlayout.widget.ConstraintLayout
<TextView
android:id="@+id/txtChangeNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/margin_20"
android:layout_marginStart="@dimen/margin_10"
android:layout_marginTop="@dimen/margin_5"
android:gravity="end"
android:text="@string/txtChange"
android:textColor="@color/blue1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/txtDigit" />
<TextView
android:id="@+id/txtCode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_10"
android:layout_marginTop="@dimen/margin_5"
android:text="@string/code"
android:textColor="@color/black"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/txtChangeNumber" />
<LinearLayout
android:id="@+id/otpLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_15"
android:weightSum="6"
android:gravity="center"
android:orientation="horizontal"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/txtDigit"
android:id="@+id/otpLayout">
app:layout_constraintTop_toBottomOf="@+id/txtCode">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP1"
android:layout_marginStart="@dimen/margin_10"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
android:gravity="center"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_marginEnd="@dimen/margin_2"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP1"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP2"
app:layout_constraintStart_toEndOf="@+id/tlOTP1"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
android:layout_marginEnd="@dimen/margin_2"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:gravity="center"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
app:layout_constraintStart_toEndOf="@+id/tlOTP1"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP2"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP3"
app:layout_constraintStart_toEndOf="@+id/tlOTP2"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
android:layout_marginEnd="@dimen/margin_2"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
android:gravity="center"
app:layout_constraintStart_toEndOf="@+id/tlOTP2"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP3"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP4"
app:layout_constraintStart_toEndOf="@+id/tlOTP3"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
android:layout_marginEnd="@dimen/margin_2"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
android:gravity="center"
app:layout_constraintStart_toEndOf="@+id/tlOTP3"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP4"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP5"
app:layout_constraintStart_toEndOf="@+id/tlOTP4"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:gravity="center"
android:layout_marginEnd="@dimen/margin_2"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
app:layout_constraintStart_toEndOf="@+id/tlOTP4"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP5"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlOTP6"
app:layout_constraintStart_toEndOf="@+id/tlOTP5"
app:layout_constraintTop_toTopOf="parent"
android:layout_weight="1"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:gravity="center"
android:layout_marginEnd="@dimen/margin_2"
android:layout_height="wrap_content"
android:padding="@dimen/margin_1">
app:layout_constraintStart_toEndOf="@+id/tlOTP5"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edtOTP6"
android:layout_width="@dimen/margin_50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:inputType="number"
android:textColor="@color/black"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
tool:ignore="TextContrastCheck,SpeakableTextPresentCheck,TouchTargetSizeCheck" />
</com.google.android.material.textfield.TextInputLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
<TextView
android:id="@+id/txtTimer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_5"
android:layout_marginEnd="@dimen/margin_20"
android:gravity="end"
android:text="(00:30)"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/otpLayout" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnSignUp"
app:cornerRadius="@dimen/margin_15"
android:theme="@style/Theme.NormalLogin"
android:id="@+id/btnSubmit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_30"
android:layout_marginTop="@dimen/margin_30"
android:layout_marginTop="@dimen/margin_50"
android:layout_marginEnd="@dimen/margin_30"
android:text="@string/continueText"
android:text="@string/submit"
android:textColor="@color/white"
android:backgroundTint="@color/red"
app:cornerRadius="@dimen/margin_15"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/otpLayout" />
<TextView
android:id="@+id/txtTimerText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_10"
android:layout_marginTop="@dimen/margin_40"
android:gravity="center"
android:text="@string/secondsTimer"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/btnSubmit" />
<TextView
android:id="@+id/txtDidNotGetOTP"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_50"
android:layout_marginTop="@dimen/margin_15"
android:text="@string/didNotGetOTP"
android:textColor="@color/black"
android:textSize="@dimen/text_size_16"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/txtTimerText" />
<TextView
android:id="@+id/txtResendOTP"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_15"
android:text="@string/resendOTP"
android:textColor="@color/blue1"
android:textSize="@dimen/text_size_16"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/txtDidNotGetOTP"
app:layout_constraintTop_toBottomOf="@id/txtTimerText" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

+ 14
- 20
app/src/main/res/layout/fragment_pager_step_one.xml View File

@ -6,32 +6,26 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:background="@color/NiveshColorAppBg"
android:background="@drawable/pager_1"
tool:context="com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1.StepOnePagerFragment">
<ImageView
android:id="@+id/logo"
app:layout_constraintBottom_toTopOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_width="@dimen/margin_150"
android:layout_height="@dimen/margin_18"
android:layout_marginStart="@dimen/margin_20"
android:layout_marginTop="@dimen/margin_5"
android:contentDescription="@string/contentDescription"
android:src="@drawable/bajaj_logo" />
<Button
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#66ffffff"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:layout_width="wrap_content"
android:theme="@style/Theme.lightRed"
app:cornerRadius="@dimen/margin_15"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_10"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/colorPrimary"
android:layout_marginStart="@dimen/margin_50"
android:layout_marginEnd="@dimen/margin_50"
android:layout_marginBottom="@dimen/margin_10"
android:textAllCaps="false"
android:textColor="@color/white"
android:text="@string/next"
android:textColor="#FFFFFF"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"


+ 47
- 27
app/src/main/res/layout/fragment_pager_step_three.xml View File

@ -6,35 +6,55 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:background="@color/NiveshColorAppBg"
android:background="@drawable/pager_3"
tool:context="com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1.StepThreePagerFragment">
<ImageView
android:id="@+id/logo"
app:layout_constraintBottom_toTopOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_width="@dimen/margin_150"
android:layout_height="@dimen/margin_18"
android:layout_marginStart="@dimen/margin_20"
android:layout_marginTop="@dimen/margin_5"
android:contentDescription="@string/contentDescription"
android:src="@drawable/bajaj_logo" />
<Button
android:id="@+id/btnNext"
android:layout_width="wrap_content"
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#66ffffff"/>
<LinearLayout
android:id="@+id/llBottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_10"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/colorPrimary"
android:text="@string/next"
android:textColor="#FFFFFF"
android:orientation="horizontal"
android:gravity="center"
android:layout_marginLeft="@dimen/margin_10"
android:layout_marginRight="@dimen/margin_10"
android:paddingBottom="@dimen/margin_10"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tool:ignore="TextContrastCheck" />
app:layout_constraintEnd_toStartOf="parent"
app:layout_constraintStart_toStartOf="parent">
<com.google.android.material.button.MaterialButton
android:id="@+id/btnBack"
android:theme="@style/Theme.lightRed"
app:cornerRadius="@dimen/margin_15"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:text="@string/back"
android:textAllCaps="false"
android:textColor="@color/white"
android:layout_marginEnd="@dimen/margin_10"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:theme="@style/Theme.lightRed"
app:cornerRadius="@dimen/margin_15"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginStart="@dimen/margin_10"
android:text="@string/next"
android:textAllCaps="false"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/btnBack" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

+ 45
- 40
app/src/main/res/layout/fragment_pager_step_two.xml View File

@ -6,50 +6,55 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:background="@color/NiveshColorAppBg"
android:background="@drawable/pager_2"
tool:context="com.nivesh.production.niveshfd.partnerOnBoarding.ui.fragments1.StepTwoPagerFragment">
<ImageView
android:id="@+id/logo"
app:layout_constraintBottom_toTopOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_width="@dimen/margin_150"
android:layout_height="@dimen/margin_18"
android:layout_marginStart="@dimen/margin_20"
android:layout_marginTop="@dimen/margin_5"
android:contentDescription="@string/contentDescription"
android:src="@drawable/bajaj_logo" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#66ffffff"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btnBack"
android:layout_width="wrap_content"
<LinearLayout
android:id="@+id/llBottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_15"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/blue"
android:text="@string/back"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent"/>
android:orientation="horizontal"
android:gravity="center"
android:layout_marginLeft="@dimen/margin_10"
android:layout_marginRight="@dimen/margin_10"
android:paddingBottom="@dimen/margin_10"
app:layout_constraintBottom_toBottomOf="parent">
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="@dimen/margin_15"
android:layout_marginTop="@dimen/margin_10"
android:backgroundTint="@color/colorPrimary"
android:text="@string/next"
android:textSize="@dimen/text_size_14"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/btnBack" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnBack"
android:theme="@style/Theme.lightRed"
app:cornerRadius="@dimen/margin_15"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:text="@string/back"
android:textAllCaps="false"
android:textColor="@color/white"
android:layout_marginEnd="@dimen/margin_10"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:theme="@style/Theme.lightRed"
app:cornerRadius="@dimen/margin_15"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginStart="@dimen/margin_10"
android:text="@string/next"
android:textAllCaps="false"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/btnBack" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

+ 5
- 20
app/src/main/res/layout/fragment_signup.xml View File

@ -6,27 +6,13 @@
android:layout_height="match_parent"
android:orientation="vertical">
<ImageView
android:id="@+id/logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:layout_width="match_parent"
android:layout_height="400dp"
android:scaleType="fitXY"
android:contentDescription="@string/contentDescription"
android:scaleType="centerInside"
android:src="@drawable/hands"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/logoNivesh"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_70"
android:padding="@dimen/margin_15"
android:scaleType="centerInside"
android:src="@drawable/nivesh"
android:src="@drawable/signup"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@ -87,7 +73,7 @@
android:id="@+id/edtMobileNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:inputType="number"
android:textColorHint="@color/greyColor2"
android:textSize="@dimen/text_size_14"
tool:ignore="TextContrastCheck" />
@ -109,7 +95,6 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tlMobileNumber" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

+ 28
- 0
app/src/main/res/layout/web_view_bottom_dialog.xml View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageCross"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/cancel"
android:layout_centerHorizontal="true"
android:src="@drawable/svg_close" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/round_corner_top"
android:layout_marginTop="@dimen/margin_60">
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</RelativeLayout>

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

@ -276,6 +276,33 @@
<string name="mobileNumber">Mobile Number</string>
<string name="signUp">Sign Up</string>
<string name="continueText">CONTINUE</string>
<string name="almostThere">Almost There</string>
<string name="moreInfo">We need some basic information about you to help you personalize your experience better!</string>
<string name="fullName">Full Name</string>
<string name="Email">Email</string>
<string name="AddressLine1">Address Line 1</string>
<string name="addressLine2">Address Line 2 (Optional) </string>
<string name="day">DD</string>
<string name="month">MM</string>
<string name="year">YYYY</string>
<string name="byClicking">By clicking on next, you agree to accept our</string>
<string name="terms_and_conditions">terms and conditions,</string>
<string name="and">and</string>
<string name="privacyPolicy">privacy policy</string>
<string name="number">0123456789</string>
<string name="agreement">Agreement</string>
<string name="upNextHome">Up Next: Home</string>
<string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string>
<string name="invalidOTP">Please enter valid OTP</string>
<string name="sixDigitOTP">Enter the 6-digit verification code sent to</string>
<string name="submit">SUBMIT</string>
<string name="secondsTimer">This session will end in 30 seconds.</string>
<string name="didNotGetOTP">Didn\'t get the OTP</string>
<string name="resendOTP">RESEND OTP</string>
<string name="mobNoText">We sent a code to your mobile number</string>
<string name="txtChange">Change</string>
<string name="code">Code</string>
<string name="skip">Skip</string>
<string name="enter_pan_card_number">Enter PAN Card Number</string>
<string name="full_name_as_on_pan_card">Full name as on Pan card</string>
<string name="enter_your_arn_number">Enter your ARN number</string>


+ 4
- 0
app/src/main/res/values/colors.xml View File

@ -13,6 +13,10 @@
<color name="blue">#1F5ACE</color>
<color name="transparent">#00000000</color>
<color name="lightBlue">#5077FF</color>
<color name="blue1">#006BFF</color>
<color name="button_red">#E92629</color>
<color name="greyColor1">#323131</color>
<color name="greyColor2">#757575</color>


+ 6
- 0
app/src/main/res/values/dimens.xml View File

@ -70,10 +70,16 @@
<dimen name="margin_90">90dp</dimen>
<dimen name="margin_95">95dp</dimen>
<dimen name="margin_100">100dp</dimen>
<dimen name="margin_110">110dp</dimen>
<dimen name="margin_120">120dp</dimen>
<dimen name="margin_130">130dp</dimen>
<dimen name="margin_140">140dp</dimen>
<dimen name="margin_150">150dp</dimen>
<dimen name="margin_160">160dp</dimen>
<dimen name="margin_170">170dp</dimen>
<dimen name="margin_180">180dp</dimen>
<dimen name="margin_190">190dp</dimen>
<dimen name="margin_200">200dp</dimen>
<dimen name="margin_290">290dp</dimen>
<dimen name="margin_300">300dp</dimen>


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

@ -281,6 +281,34 @@
<string name="mobileNumber">Mobile Number</string>
<string name="signUp">Sign Up</string>
<string name="continueText">CONTINUE</string>
<string name="almostThere">Almost There</string>
<string name="moreInfo">We need some basic information about you to help you personalize your experience better!</string>
<string name="fullName">Full Name</string>
<string name="Email">Email</string>
<string name="AddressLine1">Address Line 1</string>
<string name="addressLine2">Address Line 2 (Optional) </string>
<string name="day">DD</string>
<string name="month">MM</string>
<string name="year">YYYY</string>
<string name="byClicking">By clicking on next, you agree to accept our</string>
<string name="terms_and_conditions">terms and conditions,</string>
<string name="and">and</string>
<string name="privacyPolicy">privacy policy</string>
<string name="number">0123456789</string>
<string name="agreement">Agreement</string>
<string name="upNextHome">Up Next: Home</string>
<string name="onlyAlphabets">abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</string>
<string name="invalidOTP">Please enter valid OTP</string>
<string name="sixDigitOTP">Enter the 6-digit verification code sent to</string>
<string name="submit">SUBMIT</string>
<string name="secondsTimer">This session will end in 30 seconds.</string>
<string name="didNotGetOTP">Didn\'t get the OTP</string>
<string name="resendOTP">RESEND OTP</string>
<string name="mobNoText">We sent a code to your mobile number</string>
<string name="txtChange">Change</string>
<string name="code">Code</string>
<string name="skip">Skip</string>
<!-- TODO: Remove or change this placeholder text -->
<string name="hello_blank_fragment">Hello blank fragment</string>
<string name="enter_pan_card_number">Enter PAN Card Number</string>
@ -290,5 +318,4 @@
<string name="save_draft">SAVE DRAFT</string>
<string name="format_png_or_jpg">Format (.png or .jpg)</string>
</resources>

+ 57
- 0
app/src/main/res/values/style.xml View File

@ -99,4 +99,61 @@
<item name="cornerSizeBottomLeft">@dimen/margin_10</item>
</style>
<style name="DialogBottomAnimation">
<item name="android:windowEnterAnimation">@anim/slide_up</item>
<item name="android:windowExitAnimation">@anim/slide_down</item>
</style>
<declare-styleable name="DotsIndicator">
<attr name="dotsColor" />
<attr name="selectedDotColor" />
<attr name="dotsSize" />
<attr name="dotsWidthFactor" />
<attr name="dotsSpacing" />
<attr name="dotsCornerRadius" />
<attr name="progressMode" />
<attr name="dotsClickable" />
<attr name="dotsElevation" format="dimension" />
</declare-styleable>
<attr name="dotsColor" format="color" />
<attr name="selectedDotColor" format="color" />
<attr name="dotsStrokeColor" format="color" />
<attr name="dotsSize" format="dimension" />
<attr name="dotsWidthFactor" format="float" />
<attr name="dotsSpacing" format="dimension" />
<attr name="dotsCornerRadius" format="dimension" />
<attr name="dotsStrokeWidth" format="dimension" />
<attr name="stiffness" format="float" />
<attr name="dampingRatio" format="float" />
<attr name="progressMode" format="boolean" />
<attr name="dotsClickable" format="boolean" />
<declare-styleable name="SpringDotsIndicator">
<attr name="dotsColor" />
<attr name="dotsSize" />
<attr name="dotsSpacing" />
<attr name="dotsCornerRadius" />
<attr name="dotsStrokeWidth" />
<attr name="dotsStrokeColor" />
<attr name="stiffness" />
<attr name="dampingRatio" />
<attr name="dotsClickable" />
</declare-styleable>
<declare-styleable name="WormDotsIndicator">
<attr name="dotsColor" />
<attr name="dotsSize" />
<attr name="dotsSpacing" />
<attr name="dotsCornerRadius" />
<attr name="dotsStrokeWidth" />
<attr name="dotsStrokeColor" />
<attr name="dotsClickable" />
</declare-styleable>
<style name="Theme.lightRed" parent="Widget.MaterialComponents.Button.OutlinedButton">
<item name="colorPrimary">@color/button_red</item>
<item name="elevation">@dimen/margin_8</item>
<item name="android:solidColor">@color/white</item>
</style>
</resources>

Loading…
Cancel
Save

Powered by TurnKey Linux.