Skip to content

Commit be5c6e6

Browse files
Sample-Git-Library-tutorial )
1 parent bc4db75 commit be5c6e6

File tree

7 files changed

+87
-5
lines changed

7 files changed

+87
-5
lines changed

app/build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ android {
3030
kotlinOptions {
3131
jvmTarget = '1.8'
3232
}
33+
buildFeatures{
34+
viewBinding = true
35+
}
3336
}
3437

3538
dependencies {
@@ -40,5 +43,6 @@ dependencies {
4043
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
4144
testImplementation 'junit:junit:4.13.2'
4245
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
46+
implementation 'com.github.professorDeveloper:Edittext-Input-Validator-Library:1.0.0'
4347
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
4448
}

app/src/main/java/com/azamovhudstc/pdpgitmasala2/MainActivity.kt

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,85 @@ package com.azamovhudstc.pdpgitmasala2
22

33
import androidx.appcompat.app.AppCompatActivity
44
import android.os.Bundle
5+
import android.widget.Toast
6+
import com.azamovhudstc.pdpgitmasala2.databinding.ActivityMainBinding
7+
import com.example.validator_lib.ValidatorSpinner
58

69
class MainActivity : AppCompatActivity() {
10+
11+
private lateinit var binding: ActivityMainBinding
712
override fun onCreate(savedInstanceState: Bundle?) {
813
super.onCreate(savedInstanceState)
914
setContentView(R.layout.activity_main)
15+
setUpSpinner()
16+
setListeners()
17+
}
18+
private fun setUpSpinner() {
19+
val adapter = ValidatorSpinner.ListExampleAdapter(this)
20+
21+
binding.validatorSpinner.setAdapter(adapter)
22+
}
23+
24+
25+
private fun setListeners() {
26+
binding.apply {
27+
clearBtn.setOnClickListener {
28+
validatorSpinner.setImgGone()
29+
emailEt.text?.clear()
30+
firstEt.text?.clear()
31+
phoneEt.text?.clear()
32+
ipaddressEt.text?.clear()
33+
yearEt.text?.clear()
34+
descEt.text?.clear()
35+
doublePasswordEt.clear()
36+
doubleEt.clear()
37+
emailEt.setCompoundDrawables(null, null, null, null)
38+
firstEt.setCompoundDrawables(null, null, null, null)
39+
phoneEt.setCompoundDrawables(null, null, null, null)
40+
ipaddressEt.setCompoundDrawables(null, null, null, null)
41+
yearEt.setCompoundDrawables(null, null, null, null)
42+
descEt.setCompoundDrawables(null, null, null, null)
43+
yearEt.setCompoundDrawables(null, null, null, null)
44+
45+
}
46+
submitBtn.setOnClickListener {
47+
checkData()
48+
if (dataFull())
49+
Toast.makeText(this@MainActivity, "Success", Toast.LENGTH_SHORT).show()
50+
}
51+
}
52+
}
53+
54+
55+
private fun dataFull(): Boolean {
56+
binding.apply {
57+
58+
return (isFull() && validatorSpinner.isItemSelected()
59+
&& doubleEt.isNotEmpty())
60+
}
1061
}
62+
63+
private fun isFull(): Boolean {
64+
binding.apply {
65+
return (firstEt.isNotEmpty() && emailEt.isNotEmpty() && phoneEt.isNotEmpty() && ipaddressEt.isCorrectFilled() &&
66+
descEt.isNotEmpty() && yearEt.isNotEmpty() && validatorSpinner.isItemSelected())
67+
}
68+
}
69+
70+
71+
private fun checkData() {
72+
binding.apply {
73+
doubleEt.checkTextAndSetError()
74+
doublePasswordEt.checkTextAndSetError()
75+
firstEt.checkCorrectAndSetError()
76+
emailEt.checkCorrectAndSetError()
77+
phoneEt.checkCorrectAndSetError()
78+
ipaddressEt.checkCorrectAndSetError()
79+
descEt.checkCorrectAndSetError()
80+
yearEt.checkCorrectAndSetError()
81+
validatorSpinner.isItemSelected()
82+
83+
}
84+
}
85+
1186
}

validator_lib/src/androidTest/java/com/example/validator_lib/ExampleInstrumentedTest.kt renamed to validator_lib/src/androidTest/java/com/azamovhudstc/validator_lib/ExampleInstrumentedTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.example.validator_lib
1+
package com.azamovhudstc.validator_lib
22

33
import androidx.test.platform.app.InstrumentationRegistry
44
import androidx.test.ext.junit.runners.AndroidJUnit4

validator_lib/src/main/java/com/example/validator_lib/DoubleValidatorText.kt renamed to validator_lib/src/main/java/com/azamovhudstc/validator_lib/DoubleValidatorText.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.example.validator_lib
1+
package com.azamovhudstc.validator_lib
22

33
import android.annotation.SuppressLint
44
import android.content.Context
@@ -10,6 +10,7 @@ import android.text.TextWatcher
1010
import android.util.AttributeSet
1111
import android.widget.EditText
1212
import android.widget.LinearLayout
13+
import com.example.validator_lib.R
1314

1415
@SuppressLint("CustomViewStyleable")
1516
class DoubleValidatorText(context: Context, attrs: AttributeSet?) :

validator_lib/src/main/java/com/example/validator_lib/SpinnerValidator.kt renamed to validator_lib/src/main/java/com/azamovhudstc/validator_lib/SpinnerValidator.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.example.validator_lib
1+
package com.azamovhudstc.validator_lib
22

33
import android.content.Context
44
import android.graphics.Color
@@ -9,6 +9,7 @@ import android.view.ViewGroup
99
import android.widget.*
1010
import android.widget.AdapterView.OnItemSelectedListener
1111
import androidx.constraintlayout.widget.ConstraintLayout
12+
import com.example.validator_lib.R
1213
import kotlinx.android.synthetic.main.validator_spinner.view.*
1314

1415
class ValidatorSpinner(context: Context, attrs: AttributeSet?) : ConstraintLayout(context, attrs) {

validator_lib/src/main/java/com/example/validator_lib/ValidatorEditText.kt renamed to validator_lib/src/main/java/com/azamovhudstc/validator_lib/ValidatorEditText.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.example.validator_lib
1+
package com.azamovhudstc.validator_lib
22

33
import android.content.Context
44
import android.content.res.TypedArray
@@ -7,6 +7,7 @@ import android.text.method.DigitsKeyListener
77
import android.text.method.PasswordTransformationMethod
88
import android.util.AttributeSet
99
import androidx.appcompat.widget.AppCompatEditText
10+
import com.example.validator_lib.R
1011

1112

1213
class ValidatorEditText(context: Context, attrs: AttributeSet?) :

validator_lib/src/test/java/com/example/validator_lib/ExampleUnitTest.kt renamed to validator_lib/src/test/java/com/azamovhudstc/validator_lib/ExampleUnitTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.example.validator_lib
1+
package com.azamovhudstc.validator_lib
22

33
import org.junit.Test
44

0 commit comments

Comments
 (0)