Thursday, December 5, 2013

Aplikasi Android Sederhana (tasbih)

Halo pembaca...
kali ini saya mau sharing pemograman android sederhana.

Ide membuat aplikasi ini muncul kebetulan pas habis saya sholat,
kepikiran buat aplikasi tasbih gitu, ya semacam counter wiridan..
simple tapi bermanfaat..
sebenarnya sih pingin ngisi waktu aja coba-coba ngoding (membunuh waktu),karena di kosan nggak ada hiburan.


Tampilan aplikasi nya seperti ini
Aplikasi ini punya fitur getar saat tombol "touch" di tekan, biar user tau kalau dia sudah menekan tombol touch. ada inputan jumlah wiridan yang mau di pakai. jadi user harus inputin dulu jumlah wiridan, kalau belum inputin jumlahnya itu si tombol touch nya akan disable. setelah user inputin jumlah nya dan tekan button start, nanti ada pop up notif mulai.
kalau counternya sudah maksimal button touch nya kembali disable. dan muncul pop up notif kalau sudah selesai.



di sini saya akan menjelaskan kodingannya secara garis besar.

pertama create android project. terserah pake nama apa. saya pake nama counter.

lalu buka file AndroidManifest.xml dan tambahkan baris code ini dibawah sebelum </manifest>
  <uses-permission android:name="android.permission.VIBRATE"/>   


baris kode tersebut berfungsi memberi  permission fitur vibrate.

lalu buka main.xml di res/layout/

dan masukan baris code di bawah ini.

 <?xml version="1.0" encoding="utf-8"?>  
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
   android:layout_width="fill_parent"  
   android:layout_height="fill_parent"  
   android:orientation="vertical" >  
   <TextView  
     android:id="@+id/textView1"  
     android:layout_width="wrap_content"  
     android:layout_height="wrap_content"  
     android:layout_marginLeft="194px"  
     android:text="0"  
     android:textSize="80dp"  
   />  
   <ImageButton  
     android:id="@+id/imageButton1"  
     android:layout_width="400px"  
     android:layout_height="400px"  
     android:layout_marginLeft="40px"  
     android:background="@drawable/mainbtn"  
      />  
   <TextView  
     android:id="@+id/textView2"  
     android:layout_width="wrap_content"  
     android:layout_height="wrap_content"  
     android:textSize="20dp"  
     android:text="jumlah wiridan" />  
   <LinearLayout  
     android:layout_width="match_parent"  
     android:layout_height="wrap_content" >  
      <EditText  
     android:id="@+id/editText1"  
     android:layout_width="100px"  
     android:layout_height="wrap_content"  
     android:ems="10"  
     android:inputType="number" >  
     <requestFocus />  
   </EditText>  
      <Button  
        android:id="@+id/button1"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:text="start" />  
      <Button  
        android:id="@+id/button2"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:text="reset" />  
   </LinearLayout>   
 </LinearLayout>  

Baris code tersebut akan memberikan beberapa button dan edittext.


lalu buatlah sebuah file xml dengan nama mainbtn.xml di folder res/drawable-hdpi/ , dan masukan baris kode dibawah ini

 <?xml version="1.0" encoding="utf-8"?>  
 <selector xmlns:android="http://schemas.android.com/apk/res/android" >  
    <item  
     android:state_pressed="true"  
     android:drawable="@drawable/press">  
   </item>  
   <item  
     android:drawable="@drawable/release">  
   </item>  
 </selector>  

baris kode diatas berfungsi memberikan efek button touch saat akan ditekan,  apabila button touch di tekan, maka yang muncul adalah gambar press.png dan bila dilepas maka akan muncul gambar release.png

lalu buka file Activity.java nya.

masukan baris kode ini agar tampilan aplikasi kita tidak ada judulnya (bingung saya jelasinnya), letakkan di bawah baris . public void onCreate(Bundle savedInstanceState) { .

 requestWindowFeature(Window.FEATURE_NO_TITLE);   

lalu inisialisasi variabel - variabel yang akan dipakai dalam program. letakan dibawah inisialisasi class activity

  TextView txtjml;  
  EditText max;  
  ImageButton count;  
  Button start,reset;   
  int angka=0;  
  int batas=0;  

masukan baris kode dibawah ini untuk me refer button dan edittext yang ada di layout

  final Vibrator vibe = (Vibrator) //inisialisasi vibrasi this.getSystemService(Context.VIBRATOR_SERVICE);  
     count=(ImageButton)findViewById(R.id.imageButton1);  
     txtjml=(TextView)findViewById(R.id.textView1);  
     max=(EditText)findViewById(R.id.editText1);  
     start=(Button)findViewById(R.id.button1);  
     reset=(Button)findViewById(R.id.button2);  
       count.setEnabled(false);  //disable button touch  

masukan kode ini untuk fungsi tombol start.

   start.setOnClickListener(new OnClickListener() {  
   public void onClick(View arg0) {  
   // TODO Auto-generated method stub  
   batas=Integer.parseInt(max.getText().toString());  
   count.setEnabled(true);  
   angka=0;  
   txtjml.setText(""+angka);  
   InputMethodManager imm = (InputMethodManager)getSystemService(  
       Context.INPUT_METHOD_SERVICE);  
    imm.hideSoftInputFromWindow(max.getWindowToken(), 0);  
   Toast t = Toast.makeText(getApplicationContext(), "MULAI",Toast.LENGTH_SHORT);  
   t.show();  
   }  
  });  


Masukan tombol ini untuk  tombol reset

  reset.setOnClickListener(new OnClickListener() {  
   public void onClick(View arg0) {  
   // TODO Auto-generated method stub  
   batas=0;  
   angka=0;  
   max.setText("0");  
   txtjml.setText(""+angka);  
   count.setEnabled(false);  
   }  
  });  


masukan kode  ini untuk tombol touch
    
  count.setOnClickListener(new OnClickListener() {  
   public void onClick(View arg0) {  
   // TODO Auto-generated method stub  
   if(angka !=batas){  
    angka++;  
     vibe.vibrate(80);  
     if (angka==batas){  
      count.setEnabled(false);  
      Toast t = Toast.makeText(getApplicationContext(), "WIRIDAN ANDA SUDAH SELESAI",  
      Toast.LENGTH_SHORT);  
      t.show();  
     }  
   }  
   txtjml.setText(""+angka);  
   }  
  });  

selesai.

kalau mau download source code nya klik disini 
dan kalau mau nyoba aplikasi nya bisa download disini

Terimakasih sudah mau mampir. tunggu artikel saya yang lain..

Regards


No comments:

Post a Comment