Hey friends, we have seen listview using Kotlin as well as combination of Jetpack Architecture with Kotlin language.
Kotlin Listview Tutorial : - HB Blog 157: Listview In Android Using Kotlin.
Jetpack Architecture : - HB Blog 161: Jetpack Architecture: - Room And Live Data In Kotlin.
In this tutorial, I will show how to create a viewpager with custom adapter in Kotlin Android Application,
Refer the below link for complete sample code:-
Download Sample Code
Have a look on few code snippets,
//activity_main.xml
//CustomPagerAdapter.kt
//MainActivity.kt
Kotlin Listview Tutorial : - HB Blog 157: Listview In Android Using Kotlin.
Jetpack Architecture : - HB Blog 161: Jetpack Architecture: - Room And Live Data In Kotlin.
In this tutorial, I will show how to create a viewpager with custom adapter in Kotlin Android Application,
Refer the below link for complete sample code:-
Download Sample Code
Have a look on few code snippets,
//activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent"> <android.support.design.widget.TabLayout android:id="@+id/tablayout_main" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabMode="fixed" /> <android.support.v4.view.ViewPager android:id="@+id/viewpager_main" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout> |
//CustomPagerAdapter.kt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | package com.harshalbenake.kotlinviewpager.adapter import android.support.v4.app.Fragment import android.support.v4.app.FragmentManager import android.support.v4.app.FragmentPagerAdapter import com.caressa.libs.leaderboard.ui.fragments.FirstFragment import com.caressa.libs.leaderboard.ui.fragments.SecondFragment class CustomPagerAdapter(fragmentManager: FragmentManager) : FragmentPagerAdapter(fragmentManager) { override fun getItem(position: Int): Fragment { return when (position) { 0 ->FirstFragment() else -> { return SecondFragment() } } } override fun getCount(): Int { return 2 } override fun getPageTitle(position: Int): CharSequence { return when (position) { 0 -> "First" else -> { return "Second" } } } } |
//MainActivity.kt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | package com.harshalbenake.kotlinviewpager import android.os.Bundle import android.support.v4.app.FragmentActivity import android.view.MenuItem import com.harshalbenake.kotlinviewpager.adapter.CustomPagerAdapter import kotlinx.android.synthetic.main.activity_main.* class MainActivity : FragmentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) initLayout() } override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) { android.R.id.home -> { onBackPressed() true } else -> false } /** * init Layout */ private fun initLayout() { val fragmentAdapter = CustomPagerAdapter(supportFragmentManager) viewpager_main.adapter = fragmentAdapter tablayout_main.setupWithViewPager(viewpager_main) } } |
No comments:
Post a Comment