Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class MainActivity : AppCompatActivity() {
- private val compositeDisposable = CompositeDisposable()
- @SuppressLint("CheckResult")
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
- val nicknameInputField = findViewById<EditText>(R.id.nicknameInputField)
- val passwordInputField = findViewById<EditText>(R.id.passwordInputField)
- val okButton = findViewById<Button>(R.id.okButton)
- compositeDisposable.add(Observable.merge(nicknameInputField.textChanges(), passwordInputField.textChanges())
- .subscribe { text -> // 입력 내용에 따라 버튼색 변하게 하기
- if (nicknameInputField.length() >= 4 && passwordInputField.length() >= 4) {
- okButton.setBackgroundColor(Color.BLUE)
- } else {
- okButton.setBackgroundColor(Color.GRAY)
- }
- })
- compositeDisposable.add(okButton.clicks()
- .throttleFirst(1, TimeUnit.SECONDS) // 버튼 클릭에 쿨타임 걸기
- .observeOn(AndroidSchedulers.mainThread())
- .subscribe {
- when {
- nicknameInputField.length() < 4 -> Toast.makeText(this, "닉네임 4글자 이상!", Toast.LENGTH_SHORT).show()
- passwordInputField.length() < 4 -> Toast.makeText(this, "패스워드 4글자 이상!", Toast.LENGTH_SHORT).show()
- else -> {
- nicknameInputField.setText("")
- passwordInputField.setText("")
- Toast.makeText(this, "OK!", Toast.LENGTH_SHORT).show()
- }
- }
- }
- )
- }
- override fun onDestroy() {
- compositeDisposable.clear()
- super.onDestroy()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement