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