Xamarin Android : Membuat Grid View dengan Image dan Text - Hallo sahabat Dev-Create, Pada Artikel yang anda baca kali ini dengan judul Xamarin Android : Membuat Grid View dengan Image dan Text, kami telah mempersiapkan artikel ini dengan baik untuk anda baca dan ambil informasi didalamnya. mudah-mudahan isi postingan
Artikel gridview,
Artikel gridview images text,
Artikel xamarin gridview, yang kami tulis ini dapat anda pahami. baiklah, selamat membaca.
Judul : Xamarin Android : Membuat Grid View dengan Image dan Text
link : Xamarin Android : Membuat Grid View dengan Image dan Text
Anda sekarang membaca artikel Xamarin Android : Membuat Grid View dengan Image dan Text dengan alamat link https://dev-create.blogspot.com/2020/02/xamarin-android-membuat-grid-view.html
Judul : Xamarin Android : Membuat Grid View dengan Image dan Text
link : Xamarin Android : Membuat Grid View dengan Image dan Text
Xamarin Android : Membuat Grid View dengan Image dan Text
Pada sore yang cerah ini saya akan memberikan tutorial mengimplementasikan GridView pada Xamarin Android. Nah pada study kasusnya biasanya saya gunakan untuk membuat menu yang banyak dalam bentuk Grid. Dari pada mengandalkan GridLayout lebih baik menggunakan gridview.
Untuk menggunakannya kita memerlukan beberapa point sebagai berikut :
1. GridLayout.axml adalah sebuah tampilan custom untuk menampilkan Image dan text.
2. Kategori.axml adalah tempat kita memasang GridView yang nantinya akan diisi oleh GridLayout.
3. GridModel.cs adalah sebuah class untuk menampung variable grid.
3. GridAdapter.cs yang include didalamnya sebuah Class View Holder.
4. KategoriActivity.cs untuk menampilkan GridView.
5. Masukan gambar pada folder drawable
Sekarang kita membuat terlebih dahulu Layout yang dibutuhkan. Oh iya pastikan AppCompat dan SupportDesign sudah terinstal pada Package anda.
GridLayout.axml
KategroiLayout.axml
Membuat tambahan app_bar.axml layout untuk toolbar
app_bar.axml
Selanjutnya kita buat sebuah Model
GridModel.cs
Tampung dalam Adapter
GridAdapter.cs
Jalankan Pada Activity
KategoriActivity.cs
Oh iya kelupaan kita buat sebuah styles
Styles.xml
Nah, kode diatas adalah beberapa hal yang dibutuhkan untuk membuat GridView pada Xamarin Android.
Untuk menggunakannya kita memerlukan beberapa point sebagai berikut :
1. GridLayout.axml adalah sebuah tampilan custom untuk menampilkan Image dan text.
2. Kategori.axml adalah tempat kita memasang GridView yang nantinya akan diisi oleh GridLayout.
3. GridModel.cs adalah sebuah class untuk menampung variable grid.
3. GridAdapter.cs yang include didalamnya sebuah Class View Holder.
4. KategoriActivity.cs untuk menampilkan GridView.
5. Masukan gambar pada folder drawable
Sekarang kita membuat terlebih dahulu Layout yang dibutuhkan. Oh iya pastikan AppCompat dan SupportDesign sudah terinstal pada Package anda.
GridLayout.axml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:background="#ffffff" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:padding="8dp"> <ImageView android:id="@+id/Images" android:src="@drawable/bayi" android:layout_width="60dp" android:layout_height="60dp" android:scaleType="fitCenter" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceSmall" android:text="Name" android:id="@+id/Names" android:padding="10dp" android:textColor="#ff525252" android:gravity="center" /> </LinearLayout>
KategroiLayout.axml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffffff"> <include layout="@layout/app_bar" /> <GridView android:minWidth="25px" android:minHeight="25px" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/lv" android:numColumns="4"/> </LinearLayout>
Membuat tambahan app_bar.axml layout untuk toolbar
app_bar.axml
<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/app_bar" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" android:background="#0267C1" app:itemIconTint="@android:color/white" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
Selanjutnya kita buat sebuah Model
GridModel.cs
using System; namespace diskonfinder { public class GridModel { private String name; private int image; public GridModel(string name, int image) { this.name = name; this.image = image; } public string Name { get { return name; } } public int Image { get { return image; } } } }
Tampung dalam Adapter
GridAdapter.cs
using System; using Android.Content; using Android.Runtime; using Android.Views; using Android.Widget; using Object = Java.Lang.Object; namespace diskonfinder { class GridAdapter : BaseAdapter { private readonly Context c; private readonly JavaList<GridModel> menugrid; private LayoutInflater inflater; /* * CONSTRUCTOR */ public GridAdapter(Context c, JavaList<GridModel> menugrid) { this.c = c; this.menugrid = menugrid; } /* * RETURN SPACECRAFT */ public override Object GetItem(int position) { return menugrid.Get(position); } /* * SPACECRAFT ID */ public override long GetItemId(int position) { return position; } /* * RETURN INFLATED VIEW */ public override View GetView(int position, View convertView, ViewGroup parent) { //INITIALIZE INFLATER if (inflater == null) { inflater = (LayoutInflater)c.GetSystemService(Context.LayoutInflaterService); } //INFLATE OUR MODEL LAYOUT if (convertView == null) { convertView = inflater.Inflate(Resource.Layout.GridLayout, parent, false); } //BIND DATA CustomAdapterViewHolder holder = new CustomAdapterViewHolder(convertView) { NameTxt = { Text = menugrid[position].Name } }; holder.Img.SetImageResource(menugrid[position].Image); //convertView.SetBackgroundColor(Color.LightBlue); return convertView; } /* * TOTAL NUM OF SPACECRAFTS */ public override int Count { get { return menugrid.Size(); } } } class CustomAdapterViewHolder : Java.Lang.Object { //adapter views to re-use public TextView NameTxt; public ImageView Img; public CustomAdapterViewHolder(View itemView) { NameTxt = itemView.FindViewById<TextView>(Resource.Id.Names); Img = itemView.FindViewById<ImageView>(Resource.Id.Images); } } }
Jalankan Pada Activity
KategoriActivity.cs
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Android.App; using Android.Content; using Android.OS; using Android.Runtime; using Android.Support.V7.App; using Android.Views; using Android.Widget; namespace diskonfinder { [Activity(Label = "Kategori Diskon",Theme = "@style/MyThemes", ParentActivity = typeof(MainActivity))] public class KategoriActivity : AppCompatActivity { private GridView gv; private GridAdapter adapter; private JavaList<GridModel> menugrid; protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.KategoriLayout); var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.app_bar); SetSupportActionBar(toolbar); SupportActionBar.SetDisplayHomeAsUpEnabled(true); gv = FindViewById<GridView>(Resource.Id.lv); //BIND ADAPTER adapter = new GridAdapter(this, GetGridMenu()); gv.Adapter = adapter; gv.ItemClick += gv_ItemClick; // Create your application here } private void gv_ItemClick(object sender, AdapterView.ItemClickEventArgs e) { Toast.MakeText(this, menugrid[e.Position].Name, ToastLength.Short).Show(); } private JavaList<GridModel> GetGridMenu() { menugrid = new JavaList<GridModel>(); GridModel s; s = new GridModel("Bayi dan Anak", Resource.Drawable.bayi); menugrid.Add(s); s = new GridModel("Belanja", Resource.Drawable.belanja); menugrid.Add(s); s = new GridModel("Fashion", Resource.Drawable.fashion); menugrid.Add(s); s = new GridModel("Kuliner", Resource.Drawable.kuliner); menugrid.Add(s); s = new GridModel("Kesehatan", Resource.Drawable.kesehatan); menugrid.Add(s); s = new GridModel("Hiburan", Resource.Drawable.hiburan); menugrid.Add(s); s = new GridModel("Pendidikan", Resource.Drawable.pendidikan); menugrid.Add(s); s = new GridModel("Travel", Resource.Drawable.travel); menugrid.Add(s); s = new GridModel("Kuliner", Resource.Drawable.kuliner); menugrid.Add(s); s = new GridModel("Cafe", Resource.Drawable.cafe); menugrid.Add(s); s = new GridModel("Musik", Resource.Drawable.musik); menugrid.Add(s); s = new GridModel("Otomotif", Resource.Drawable.otomotif); menugrid.Add(s); s = new GridModel("Elektronik", Resource.Drawable.elektronik); menugrid.Add(s); s = new GridModel("Olahraga", Resource.Drawable.olahraga); menugrid.Add(s); s = new GridModel("Hotel", Resource.Drawable.hotel); menugrid.Add(s); s = new GridModel("Jasa", Resource.Drawable.services); menugrid.Add(s); return menugrid; } public override void OnBackPressed() { base.OnBackPressed(); } } }
Oh iya kelupaan kita buat sebuah styles
Styles.xml
<?xml version="1.0" encoding="utf-8" ?> <resources> <style name="MyTheme.Base" parent="Theme.AppCompat.Light"> </style> <style name="MyTheme" parent="MyTheme.Base"> </style> <style name="MyTheme.Splash" parent ="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowBackground">@drawable/splashscreen</item> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">true</item> </style> <style name="MyTheme.Bases" parent="Theme.AppCompat.Light.NoActionBar"> <item name="windowNoTitle">true</item> <item name="windowActionBar">true</item> <item name="colorControlNormal">#0C92CF</item> <item name="colorPrimary">#2196F3</item> <item name="colorPrimaryDark">#1976D2</item> <item name="colorAccent">#0C92CF</item> </style> <style name="MyThemes" parent="MyTheme.Bases"> </style> </resources>
Nah, kode diatas adalah beberapa hal yang dibutuhkan untuk membuat GridView pada Xamarin Android.
Demikianlah Artikel Xamarin Android : Membuat Grid View dengan Image dan Text
Sekianlah artikel Xamarin Android : Membuat Grid View dengan Image dan Text kali ini, mudah-mudahan bisa memberi manfaat untuk anda semua. baiklah, sampai jumpa di postingan artikel lainnya.
Anda sekarang membaca artikel Xamarin Android : Membuat Grid View dengan Image dan Text dengan alamat link https://dev-create.blogspot.com/2020/02/xamarin-android-membuat-grid-view.html