Skip to main content

Membuat Aplikasi Ramalan Cuaca Menggunakan Kotlin 2017

Hallo Kuy, Masih sehat dengan Codingganya? semoga tetap sehat dan enggak muntah-muntah dalam belajar pemmogramman, pada artikel kali ini saya akan membahas tentang Kotlin, materi ini saya dapatkan waktu mengikuti workshop di kantor Go-jek, materi ini diberikan oleh salah satu Depelover Google Expert Indonesia yaitu Sidiq Permana dan di workshop juga ada Mobile Engginernya Gojek, teman-teman engginer java dan lain lain yang ingin berhijrah ke kotlin, kenapa sih kotlin? iya, Google kedepan akan menjadikan bahasa kotlin itu menjadi bahasa utama untuk android, itu nanti ya.

motivasi belajar proggraming

Pada artikel yang akan saya share yaitu bukan project buatan saya, akan tetapi projectnya Sidiq permana, yang mana dalam projectnya mengimplementasikan konsep MVP pada projectnya. Apa itu MVP ? baca disini lebih lengkap.

untuk anda yang pemula atau yang ingin hijrah ke kotlin bisa belajar di link bawah ini

dasar kotlin android untuk membuat perhitungan luas segitiga 

untuk menampilkan data ke listview dan recyclerview 

belajar crud kotlin menggunakan retrofit 2, MVP dan Api Service Lumen Framework


untuk tampilan aplikasinya seperti pada gambar berikut ini  :



Pada Projectnya dia menggunakan library picasso untuk gambar , RxJava dan RxAndroid, Retrofit2, dan Dagger 2.

lebih lengkap materi RxJava baca disini
Materi Retrofit2 baca disini
untuk library anko baca di sini

untuk official page group kotlin indobisa kunjungi disini
 untuk dokumentasi mater kotlin bisa ke webnya lansung disini



berikut implementasi depenciesnya.
// VIEW COMPONENT
implementation "org.jetbrains.anko:anko-common:$anko_version"
implementation 'com.android.support:recyclerview-v7:26.0.1'

// RxJava & RxAndroid
implementation 'io.reactivex:rxjava:1.1.6'
implementation 'io.reactivex:rxandroid:1.2.1'

// Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'

// Dagger 2
implementation 'com.google.dagger:dagger:2.11'
kapt 'com.google.dagger:dagger-compiler:2.11'
provided 'org.glassfish:javax.annotation:10.0-b28'

// PICASSO
implementation 'com.squareup.picasso:picasso:2.5.2'

testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.0'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.0'




untuk file layout activity_main.xml seperti berikut ini :
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:app="http://schemas.android.com/apk/res-auto"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    tools:context="com.nbs.weatherforecast.view.main.MainActivity">



    <android.support.v7.widget.RecyclerView

        android:layout_width="match_parent"

        android:layout_height="match_parent"

        android:id="@+id/rvWeatherResult"

        android:layout_centerVertical="true"

        android:layout_centerHorizontal="true"/>



    <ProgressBar

        android:layout_width="48dp"

        android:layout_height="48dp"

        android:id="@+id/progresbar"

        android:layout_centerHorizontal="true"

        android:layout_centerVertical="true"/>



</RelativeLayout>




utuk xml list itemnya seperti berikut ini :
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:orientation="vertical" android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:padding="16dp">

    <ImageView

        android:layout_width="48dp"

        android:layout_height="48dp"

        android:layout_gravity="center_vertical"

        android:id="@+id/imgWeather"

        android:layout_marginRight="16dp"/>

    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:orientation="vertical"

        android:layout_toRightOf="@id/imgWeather">

        <TextView

            android:id="@+id/tvDate"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            tools:text="Date"

            android:layout_marginBottom="4dp"

            android:fontFamily="sans-serif-condensed"/>

        <TextView

            android:id="@+id/tvWeatherName"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            tools:text="Weather Name"

            android:fontFamily="sans-serif-condensed"/>

        <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            tools:text="Day"

            android:id="@+id/tvTempMinMax"

            android:fontFamily="sans-serif-condensed"/>

    </LinearLayout>

</RelativeLayout>





lebih lengkap bisa pelajari projectnya disini github Sidiq permana

untuk anda yang baru belajar proggraming, saya sarankan baca-baca halaman ini.


Comments

Popular posts from this blog

Contact Person

Hello Semua, bagi yang ingin menanyakan persoalan isi content yang saya telah post bisa menghubungi saya di daftar kontak saya dibawah ini : Whatsap  0853-9803-8073 Email       Basriumar12@gmail.com Group Belajar Android LINK GROUP WHATSAP   http://bit.ly/2x3H0oT  full kuota LINK GORUP TELEGRAM  http://bit.ly/2knZ5gu

Belajar listview dan Spinner

ListView  adalah tampilan beberapa item dalam bentuk list yang dapat di  scroll  secara vertikal. Setiap item akan otomatis dimasukkan kedalam  list  menggunakan  Adapter  yang datanya di ambil dari array/database/json/dsb.  ListView  sering digunakan dalam aplikasi Android, seperti kontak, email, twitter, dsb. Spinner View adalah list dari item pada saat tertentu dan membolehkan user untuk memilihnya. Secara sederhana Spinner View akan menyediakan cara cepat untuk memilih salah satu dari nilai set. Dalam keadaan default, Spinner menunjukkan nilai yang sedang dipilih. Ketika user menyentuh spinner view maka aplikasi akan menampilkan menu dengan semua nilai-nilai lain yang tersedia, sehingga user dapat memilih item yang baru. Adapter  adalah jembatan antara dan  AdapterView  (contohnya ListView) dengan data. Adapter inilah yang menyediakan akses ke item data dan juga bertanggung jawab untuk membuat sebuah View pad...