Label: ,

Android Tutorial - Membuat Jadwal Mata Kuliah Dengan Eclipsde

Pada kesempatan ini, saya akan berbagi tutorial tentang cara membuat jadwal mata kuliah atau mata pelajaran berikut nanti hasilnya..




Ok mari kita buat aplikasinya.

1. Buat projectnya beri nama dengan "Jadwal Mata Kuliah" dan packagenya "com.ahmadsahidin.polimediamks.jadwalmatakuliah" seperti gambar berikut..


2.  Klik Next sampai Finsih, dan biarkan default aja.
3.  Masuk ke directori main.xml di  "res/menu/main.xml". Sesuaikan dengan code berikut

<menu xmlns:android="http://schemas.android.com/apk/res/android" >  
     <item
        android:id="@+id/action_senin"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="Senin"/>
    <item
        android:id="@+id/action_selasa"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="Selasa"/>
    <item
        android:id="@+id/action_rabu"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="Rabu"/>
    <item
        android:id="@+id/action_kamis"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="Kamis"/>
    <item
        android:id="@+id/action_jumat"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="Jumat"/>
</menu>


4.  Masuk ke folder layout. Buka  "res/layout/activity_main.xml". Sesuaikan dengan code berikut

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textViewHari"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text=""
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <ListView
        android:id="@+id/listViewJadwal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textViewHari"
        android:layout_below="@+id/textViewHari" >
    </ListView>

</RelativeLayout>

5.  Buat layout baru di "res/layout" beri nama dengan  "baris_jadwalkuliah.xml". Ini digunakan untuk layout baris. Lalu sesuaikan dengan code berikut.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textViewHari"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text=""
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <ListView
        android:id="@+id/listViewJadwal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textViewHari"
        android:layout_below="@+id/textViewHari" >
    </ListView>

</RelativeLayout>

6.  Buat dua  class baru di "src/com.ahmadsahidin.polimediamks.jadwalmatakuliah" dan beri nama dengan
  • Jadwal.java
  • AdapterJadwal.java

7.  Buka class  "Jadwal.java" dan sesuaikan dengan code berikut

package com.ahmadsahidin.polimediamks.jadwalmatakuliah;

public class Jadwal {
 public String hari="";
 public String jam="";
 public String pelajaran="";

 public Jadwal (String pday, String ptime, String plesson){
  this.hari = pday;
  this.jam = ptime;
  this.pelajaran = plesson;
 }

}

8.  Buka class  "AdapterJadwal.java", sesuaikan dengan code berikut.

package com.ahmadsahidin.polimediamks.jadwalmatakuliah;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

public class AdapterJadwal extends ArrayAdapter {
    private Activity activity;
    private ArrayList lJadwal;
    private static LayoutInflater inflater = null;

    public AdapterJadwal (Activity activity, int textViewResourceId,ArrayList al_Jadwal) {
        super(activity, textViewResourceId, al_Jadwal);
        try {
            this.activity = activity;
            this.lJadwal = al_Jadwal;

            inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        } catch (Exception e) {

        }
    }

    public int getCount() {
        return lJadwal.size();
    }

    public long getItemId(int position) {
        return position;
    }

    public static class ViewHolder {
        public TextView jam;
        public TextView pelajaran;

    }

    public View getView(int position, View convertView, ViewGroup parent) {
        View vi = convertView;
        final ViewHolder holder;
        try {
            if (convertView == null) {
                vi = inflater.inflate(R.layout.baris_jadwalkuliah, null);
                holder = new ViewHolder();

                holder.jam = (TextView) vi.findViewById(R.id.textViewRowJam);
                holder.pelajaran = (TextView) vi.findViewById(R.id.textViewRowPelajaran);

                vi.setTag(holder);
            } else {
                holder = (ViewHolder) vi.getTag();
            }

            holder.jam.setText(lJadwal.get(position).jam);
            holder.pelajaran.setText(lJadwal.get(position).pelajaran);

        } catch (Exception e) {

        }
        return vi;
    }
}

9.  Buka class  "MainActivity.java"  sesuaikan dengan code berikut

package com.ahmadsahidin.polimediamks.jadwalmatakuliah;

import java.util.ArrayList;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ListView;
import android.widget.TextView;

public class MainActivity extends Activity {
 ArrayList  list_jadwal = new ArrayList();
 TextView tvhari;
 ListView listviewjadwal ;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  tvhari = (TextView) findViewById(R.id.textViewHari);
  listviewjadwal = (ListView) findViewById(R.id.listViewJadwal);
  initData();
 }

 public void initData() {
  list_jadwal.add(new Jadwal("Senin","08:00-10:00","Audio Editing"));
  list_jadwal.add(new Jadwal("Senin","10:00-12:00","Video Editing"));
  list_jadwal.add(new Jadwal("Senin","12:00-13:00","Pendidikan Agama Islam"));
  list_jadwal.add(new Jadwal("Senin","13:00-15:00","Video Editing"));
  list_jadwal.add(new Jadwal("Selasa","08:00-10:00","Media Digital Grafis"));
  list_jadwal.add(new Jadwal("Selasa","10:00-12:00","English"));
  list_jadwal.add(new Jadwal("Selasa","12:00-13:00","Istirahat"));
  list_jadwal.add(new Jadwal("Selasa","13:00-15:00","Nirmana"));
  list_jadwal.add(new Jadwal("Rabu","08:00-10:00","English 2"));
  list_jadwal.add(new Jadwal("Rabu","10:00-12:00","Medai Digital Grafis"));
  list_jadwal.add(new Jadwal("Rabu","12:00-13:00","Istirahat"));
  list_jadwal.add(new Jadwal("Rabu","13:00-15:00","Project Media Grafis"));
  list_jadwal.add(new Jadwal("Kamis","08:00-10:00","Pemrograman Visual"));
  list_jadwal.add(new Jadwal("Kamis","10:00-12:00","Pemrograman Visual"));
  list_jadwal.add(new Jadwal("Kamis","12:00-13:00","Istirahat"));
  list_jadwal.add(new Jadwal("Kamis","13:00-15:00","Pemrograman Visual"));
  list_jadwal.add(new Jadwal("Jumat","08:00-10:00","Fotografi"));
  list_jadwal.add(new Jadwal("Jumat","10:00-12:00","Komunikasi Multimedia"));
  list_jadwal.add(new Jadwal("Jumat","12:00-13:00","Istirahat"));
  list_jadwal.add(new Jadwal("Jumat","13:00-15:00","Storyboard Product Multimedia"));
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
     return super.onCreateOptionsMenu(menu);
 }

  /**
     * On selecting action bar
     * */
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Take appropriate action for each action item click
        switch (item.getItemId()) {
        case R.id.action_senin:
            showJadwal("Senin");
            return true;
        case R.id.action_selasa:
            // location found
         showJadwal("Selasa");
            return true;
        case R.id.action_rabu:
         showJadwal("Rabu");
            return true;
        case R.id.action_kamis:
         showJadwal("Kamis");
            return true;
        case R.id.action_jumat:
         showJadwal("Jumat");
            return true;
        default:
            return super.onOptionsItemSelected(item);
        }
    }

 public void showJadwal(String hari) {

  tvhari.setText("Hari " + hari);
  ArrayList jadwal_terpilih = new ArrayList();
   for (int i = 0; i < list_jadwal.size(); i++) {
    Jadwal jadwal = list_jadwal.get(i);
    if (jadwal.hari.equals(hari)) {
     jadwal_terpilih.add(jadwal);
    }
   }

  AdapterJadwal adapterjadwal = new AdapterJadwal(MainActivity.this, 0,
    jadwal_terpilih);
  listviewjadwal.setAdapter(adapterjadwal);

 }

}

10.  Silahkan edit jadwal mata kuliah yang terdapat pada class "MainActivity.java", sesuaikan dengan jadwal mata kulah anda.

11.  Jalankan projectnya. Kalau berhasil tampilannya seperti ini:




Demikian tutorial kali ini, Semoga bisa membantu dan bermanfaat.

sumber: agusharyanto.net
Tentang Penulis :
AHMAD SAHIDIN, Seorang anak muda asal Kaledupa yang sangat menyukai dunia Blogging. Berprofesi sebagai Mahasiswa Jurusan Pendidikan Matematika.
My facebook

1 komentar:

  1. Unknown said...:

    aplikasi apa dipakai itu masbro?

Post a Comment