About Me

Agus Haryanto,
Android Trainner,
GoogleMaps (JavaScript) Trainer
JQuery and JQuery Mobile Trainer
Java, Java Script and PHP Trainer
Freelance Developer Android
Freelance Developer Blackberry
Freelance Developer Web (GIS Googlemaps)
Freelance Developer SMS Gateway

jika ingin contact saya bisa emali ke agus.superwriter@gmail.com

ym: agus_h23

Pin BB : 2AD38B33

Facebook : Agus Haryanto


Article

Belajar Android Membuat Aplikasi Calculator Sederhana

Ingat dulu jaman sekolah kalau ngerjain soal matematika tidak boleh pakai calculator. Kalau ketahuan bisa dimarahi pak Guru atau Bu Guru dan kalau ada yang pakai dan ketahuan itu bakal malu banget. Hal itu menyebabkan kita untuk menghafal perkalian dan pembagian.

Dahulu saya paling tidak suka kalau ada tugas mengarang, karena kita dituntut untuk mengarang dengan menulisnya dikertas folio dua lembar, tapi toh bisa selesai juga dan original dari pikiran kita sendiri. Kalau jaman sekarang mungkin kita akan buka google dan mencari topiknya dari situ kita bisa kembangkan dan menjadikannya lebih baik. Demikian juga dengan calculator. Sekarang calculator sudah ada di handphonenya. Terkadang ada rasa ingin buat aplikasi android calculator sendiri, tentunya tidak muluk-muluk yang fungsi dasar saja dulu. Cari-cari referensi digoogle akhirnya ketemu juga di http://www.dudeprogrammers.com/

Untuk yang tertarik membuatnya bisa mengikuti langkah berikut ini

1. Buat new project dengan nama MyCalculator.

2. Sekarang kita buat user interfacenya, edit activity_main.xml lalu ketikan kode 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">

    <EditText
        android:id="@+id/result_id"
        android:layout_width="match_parent"
        android:layout_height="70dp" />

    <Button
        android:id="@+id/Btn7_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/result_id"
        android:onClick="btn7Clicked"
        android:text="7" />

    <Button
        android:id="@+id/Btn8_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/result_id"
        android:layout_toRightOf="@id/Btn7_id"
        android:onClick="btn8Clicked"
        android:text="8" />

    <Button
        android:id="@+id/Btn9_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/result_id"
        android:layout_toRightOf="@id/Btn8_id"
        android:onClick="btn9Clicked"
        android:text="9" />

    <Button
        android:id="@+id/Btnclear_id"
        android:layout_width="90dp"
        android:layout_height="60dp"
        android:layout_below="@id/result_id"
        android:layout_toRightOf="@id/Btn9_id"
        android:onClick="btnclearClicked"
        android:text="clear" />

    <Button
        android:id="@+id/Btn4_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn7_id"
        android:onClick="btn4Clicked"
        android:text="4" />

    <Button
        android:id="@+id/Btn5_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn8_id"
        android:layout_toRightOf="@id/Btn4_id"
        android:onClick="btn5Clicked"
        android:text="5" />

    <Button
        android:id="@+id/Btn6_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn9_id"
        android:layout_toRightOf="@id/Btn5_id"
        android:onClick="btn6Clicked"
        android:text="6" />

    <Button
        android:id="@+id/Btnplus_id"
        android:layout_width="90dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btnclear_id"
        android:layout_toRightOf="@id/Btn6_id"
        android:onClick="btnplusClicked"
        android:text="+" />

    <Button
        android:id="@+id/Btn1_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn4_id"
        android:onClick="btn1Clicked"
        android:text="1" />

    <Button
        android:id="@+id/Btn2_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn5_id"
        android:layout_toRightOf="@id/Btn1_id"
        android:onClick="btn2Clicked"
        android:text="2" />

    <Button
        android:id="@+id/Btn3_id"
        android:layout_width="70dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn6_id"
        android:layout_toRightOf="@id/Btn2_id"
        android:onClick="btn3Clicked"
        android:text="3" />

    <Button
        android:id="@+id/Btnminus_id"
        android:layout_width="90dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btnplus_id"
        android:layout_toRightOf="@id/Btn3_id"
        android:onClick="btnminusClicked"
        android:text="-" />

    <Button
        android:id="@+id/Btnequal_id"
        android:layout_width="110dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn1_id"
        android:onClick="btnequalClicked"
        android:text="=" />

    <Button
        android:id="@+id/Btndivide_id"
        android:layout_width="90dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btn1_id"
        android:layout_toRightOf="@id/Btnequal_id"
        android:onClick="btndivideClicked"
        android:text="/" />

    <Button
        android:id="@+id/Btnmulti_id"
        android:layout_width="100dp"
        android:layout_height="60dp"
        android:layout_below="@id/Btnminus_id"
        android:layout_toRightOf="@id/Btndivide_id"
        android:onClick="btnmultiClicked"
        android:text="*" />

</RelativeLayout>

3. Sekarang kita ke bagian otak dari aplikasi, edit MainActivity.java lalu ketikan kode berikut

package net.agusharyanto.mycalculator;

import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.EditText;

public class MainActivity extends ActionBarActivity {

    public String str ="";
    Character op = 'q';
    float i,num,numtemp;
    EditText showResult;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        showResult = (EditText)findViewById(R.id.result_id);

    }
    public void btn1Clicked(View v){
        insert(1);

    }

    public void btn2Clicked(View v){
        insert(2);

    }
    public void btn3Clicked(View v){
        insert(3);

    }
    public void btn4Clicked(View v){
        insert(4);

    }
    public void btn5Clicked(View v){
        insert(5);

    }
    public void btn6Clicked(View v){
        insert(6);
    }
    public void btn7Clicked(View v){
        insert(7);

    }
    public void btn8Clicked(View v){
        insert(8);

    }
    public void btn9Clicked(View v){
        insert(9);

    }
    public void btnplusClicked(View v){
        perform();
        op = '+';

    }

    public void btnminusClicked(View v){
        perform();
        op = '-';

    }
    public void btndivideClicked(View v){
        perform();
        op = '/';

    }
    public void btnmultiClicked(View v){
        perform();
        op = '*';

    }
    public void btnequalClicked(View v){
        calculate();

    }

    public void btnclearClicked(View v){
        reset();
    }
    private void reset() {
        // TODO Auto-generated method stub
        str ="";
        op ='q';
        num = 0;
        numtemp = 0;
        showResult.setText("");
    }
    private void insert(int j) {
        // TODO Auto-generated method stub
        str = str+Integer.toString(j);
        num = Integer.valueOf(str).intValue();
        showResult.setText(str);

    }
    private void perform() {
        // TODO Auto-generated method stub
        str = "";
        calculateNoShow();
        numtemp = num;

    }
    private void calculate() {
        // TODO Auto-generated method stub
        if(op == '+')
            num = numtemp+num;
        else if(op == '-')
            num = numtemp-num;
        else if(op == '/')
            num = numtemp/num;
        else if(op == '*')
            num = numtemp*num;
        showResult.setText(""+num);
    }

    private void calculateNoShow() {
        // TODO Auto-generated method stub
        if(op == '+')
            num = numtemp+num;
        else if(op == '-')
            num = numtemp-num;
        else if(op == '/')
            num = numtemp/num;
        else if(op == '*')
            num = numtemp*num;
    }
}

4. Sekarang mari kita run projectnya

Kalau dah sukses coba deh tunjukkan ke Ayah dan Ibu kita dan perhatikan raut wajah mereka. Buat adik-adiku yang masih kuliah bersungguh-sungguhlah dengan kuliahmu, selesaikanlah tepat waktu, Dan bahagiakanlah ke dua orang tuamu yang sudah menyayangimu dengan penuh kasih sayang. Mereka akan gembira melihat anak-anak mereka menjadi orang yang sukses dan berakhlak mulia.

Oh ia ada Film bagus nih yang insya Allah bisa membuat kita tambah sayang sama kedua orang tua kita, judulnya “Ada surga dirumahmu”.

Semoga Bermanfaat

Salam Hangat Developer Android

Agus Haryanto

Trainer, Praktisi Android

Pembicara Seminar IT

Referensi

http://www.dudeprogrammers.com/

Share

6 comments to Belajar Android Membuat Aplikasi Calculator Sederhana

  • ugy

    Tutorialnya bagus mas, cuma ada yg kurang, sebaiknya dijelaskan juga konsep kerjanya, fungsi method-methodnya, variabel-variabelnya. Jadi buat ngokohin pondasi pengetahuan ttg android heheh..

  • tutorial nya jelas sekali bang. tapi yang tidak kalah mantap nya kata-kata terakhir yang abang bicarakan yaitu “Buat adik-adiku yang masih kuliah bersungguh-sungguhlah dengan kuliahmu, selesaikanlah tepat waktu, Dan bahagiakanlah ke dua orang tuamu yang sudah menyayangimu dengan penuh kasih sayang. Mereka akan gembira melihat anak-anak mereka menjadi orang yang sukses dan berakhlak mulia”
    saya sangat terharu membaca nya, terimakasih banyak bang

  • Putra

    Mantab Pak Tutorialnya.
    Kalau untuk menambahkan tombol button yang berisi angka 0 (nul) dan bisa berfungsi juga bagaimana Pak.

    Terima Kasih.

  • putra

    mantap sekali tutorialnya….
    apakah ada tutorial untuk menampilkan HTML mengunkan android studio…dimana ada banyak file html dan bisa saling di panggil…trimakasih pak sebelumnya

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Spam protection by WP Captcha-Free