Kotlin - Pytanie o budowanie aplikacji Android |
Kotlin - Pytanie o budowanie aplikacji Android |
5.11.2018, 22:08:49
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Siemanko.
Ostanimi czasy zacząłem sobie dłubać w Kotlin małą apkę na Andka. Taka mobilna wersja jednego z serwisów które mam do obsługi danych. Nic wielkiego. Mam sobie taki kod: Kod class MainActivity : AppCompatActivity() { var menu: Menu? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) recycleView_main.layoutManager = LinearLayoutManager(this) fetchAndBuildList() } private fun fetchAndBuildList() { val request = Request.Builder().url("http://192.168.2.101/api/v1/user").build() val client = OkHttpClient() client.newCall(request).enqueue(object : Callback { override fun onFailure(call: Call, e: IOException) { TODO("not implemented") } override fun onResponse(call: Call, response: Response) { val gson = GsonBuilder().create() val userList = gson.fromJson(response.body()?.string(), Array<SimpleUser>::class.java) runOnUiThread { val adapter = MainListAdapter(userList) recycleView_main.adapter = adapter setMenuFiltering(adapter) } } }) } private fun setMenuFiltering(adapter: MainListAdapter) { val searchView = menu?.findItem(R.id.menu_search)?.actionView as SearchView searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { override fun onQueryTextSubmit(string: String?) = true override fun onQueryTextChange(string: String?): Boolean { adapter.filter.filter(string) return true } }) } override fun onCreateOptionsMenu(menu: Menu?): Boolean { menuInflater.inflate(R.menu.main, menu) this.menu = menu return super.onCreateOptionsMenu(menu) } } To jest aktywnośc która wyświela listę userów z możliwością wyszukiwania. Teraz chciałem dodać do tego jeszcze Full Screenn Progress Bar (odpowiednik CSS Preloader) Zastanawiam się czy są jakieś koncepty gdzie: // mogę pobierać dane z REST przez okhttp3 (aktualnie jest enqueue) // Generować widok // Wrzucić przeloader zanim zaczytają się dane z REST i przegeneruje się widok. Ja wieem że ten kod może wołać o pomstę do Nieba Jako że poznaję dopiero ten język to chłonę nowinki. Ew. może ktoś ma jakiś fajny blog o Kotlinie. |
|
|
Wersja Lo-Fi | Aktualny czas: 4.05.2024 - 16:07 |