🇪🇸
Para cualquier tipo de app, es muy importante que haya un formulario de contacto con el que poder comunicarse con los usuarios, y por ello el reto de hoy.
🇺🇸
For any type of application, it is very important that there is a contact form with which to communicate with users, and therefore today's challenge.
🇺🇸
An MVVM pattern and retrofit to get the list of countries from the RESTCountries API (https://restcountries.eu/) and a function which validates the phone and email fields. Organize your files with a clean architecture.
🇪🇸
Utilice un patrón MVVM y retrofit para obtener la lista de países de la API RESTCountries(https://restcountries.eu/) y una función la cual valida los campos de teléfono y correo electrónico. Organice los ficheros con una clean arquitecture.
🇪🇸 ✅ Task 1 → Puedo ver el diseño propuesto por pantalla
🇺🇸 ✅ Task 1 → I can see the proposed design on the screen
🇪🇸 ✅ Task 2 → Los campos de teléfono y correo tiene manejo de errores y no permite enviar el formulario sin que sean correctos
🇺🇸 ✅ Task 2 → The phone and mail fields have error handling and do not allow submitting the form without being correct
-
binding.vbAccept.setOnClickListener { if (!Validator.validText(1, binding.etEmail.text.toString())) binding.etEmail.error = getString(R.string.email_invalid) else if (!Validator.validText(2, binding.etPhone.text.toString())) binding.etPhone.error = getString(R.string.phone_invalid) else { val snackBar = Snackbar.make( binding.clMain, getString(R.string.validField), Snackbar.LENGTH_LONG ).setAction("Action", null) snackBar.show() } }
🇪🇸 ✅ Task 3 → Puedo ver como mínimo una lista de 10 países
🇺🇸 ✅ Task 3 → I can see at least a list of 10 countries
🇪🇸 ✅ Task 4 → Puedo ver una lista de países completa integrando la API de países RESTCountries(https://restcountries.eu/)
🇺🇸 ✅ Task 4 → I can see a complete list of countries by integrating the RESTCountries countries API (https://restcountries.eu/)
- MainActivity.kt
- MainViewModelFactory.kt
- MainViewModel.kt
- MainRepository.kt
- ApiInterface.kt
- CountryData.kt
- Victor Escalante