Selasa, 12 November 2013

Kalkulator android manipulasi

| |
android
Dalam kesempatan kali ini saya akan menposting sebuah artikel tentang aplikasi mobile mobile android yang merupakan tugas dari mata kuliah pemrograman mobile yang saya ambil,
walaupun aplikasinya cukup sederhana tapi saya butuh waktu untuk menyelesaikan nya,,,,,,soal nya sangat sulit gan :P 
seperti biasanya saya memakai linier layout,,,
mengapa harus liner layout??????
kalo saya sih hanya ikut-ikutan,,,soalnya lebih gampang hehehehehehehe:P
berikut Screenshoot jadi aplikasi ini,,,(masih menggunakan emulator)


android

android

android

android



DESKRIPSI:sebuah aplikasi native android dengan input event dan input control serta melengkapi dengan Toast, Notifikasi, Intent, Menu dan Alert Dialog.

Berikut coding aplikasinya:

Layout (activity_main.xml)

<LinearLayout xmlns:android="">
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
 
    <EditText
        android:id="@+id/input1"
        android:layout_width="wrap_content"
        android:layout_height="90dp"
        android:layout_weight="1"
        android:hint="input angka 1"
        android:inputType="number"
         android:background="#aa0000"/>
 
    <EditText
        android:id="@+id/input2"
        android:layout_width="wrap_content"
        android:layout_height="90dp"
        android:layout_weight="1"
        android:hint="input angka 2"
        android:inputType="number"
         android:background="#aa0000"/>
       </LinearLayout>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
 
         <Button
            android:id="@+id/lingkaran"
            android:layout_width="wrap_content"
            android:layout_height="90dp"
            android:layout_weight="1"
            android:text="LK"
            android:background="#0000aa"/>
       
          <Button
            android:id="@+id/bujurSangkar"
            android:layout_width="wrap_content"
            android:layout_height="90dp"
            android:layout_weight="1"
            android:text="BS"
            android:background="#0000aa"/>
        
        <Button
            android:id="@+id/segiTiga"
            android:layout_width="wrap_content"
            android:layout_height="90dp"
            android:layout_weight="1"
            android:text="SG"
            android:background="#0000aa"/>
 
        <Button
            android:id="@+id/trapesium"
            android:layout_width="wrap_content"
            android:layout_height="90dp"
            android:layout_weight="1"
            android:text="TR"
            android:background="#0000aa"/>
       
        <Button
              android:id="@+id/clear"
              android:layout_width="wrap_content"
              android:layout_height="90dp"
              android:layout_weight="1"
              android:text="CL"
              android:background="#0000aa"/>
    </LinearLayout>
 
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:background="#00aa00">
 
        <TextView
            android:id="@+id/hsl"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:ems="3"
            android:textSize="30dp"
            android:text="Hasil : "/>
   
    <TextView
        android:id="@+id/hasil"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="30dp"
        android:text="" />
    </LinearLayout>
</LinearLayout>
 
 
 
 
 
 
 
Menu (main.xml)
<menu xmlns:android="">
    <item android:id="@+id/home"
      android:title="Home" />
      <item android:id="@+id/call"
      android:title="Call" />
      <item android:id="@+id/exit"
      android:title="Exit" />
     
</menu>
 
mainActivity.java

package com.damba.LBD;
 
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.NotificationManager;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.v4.app.NotificationCompat;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
 
public class MainActivity extends Activity implements OnClickListener {
 
       EditText inp1, inp2;
       Button lingkaran, bujurSangkar, segiTiga,trapesium, clear;
       TextView hsl;
      
       private double input1, input2;
       @Override
       protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
             
              inp1 = (EditText)findViewById(R.id.input1);
              inp2 = (EditText)findViewById(R.id.input2);
              lingkaran = (Button)findViewById(R.id.lingkaran);
              bujurSangkar = (Button)findViewById(R.id.bujurSangkar);
              segiTiga = (Button)findViewById(R.id.segiTiga);
              trapesium = (Button)findViewById(R.id.trapesium);
              clear = (Button)findViewById(R.id.clear);
              hsl = (TextView)findViewById(R.id.hasil);
              lingkaran.setOnClickListener(this);
              bujurSangkar.setOnClickListener(this);
              segiTiga.setOnClickListener(this);
              trapesium.setOnClickListener(this);
              clear.setOnClickListener(this);
       }
       @SuppressWarnings("deprecation")
       public void onClick(View v) {
              // TODO Auto-generated method stub
             
              input1 = Double.parseDouble(inp1.getText().toString());
              input2 = Double.parseDouble(inp2.getText().toString());
             
             
              switch (v.getId()){
              case R.id.lingkaran:
                     //deklarasi toast pada luas lingkaran
                     hsl.setText(Double.toString(3.14*input1*input2));
                     Toast.makeText(getBaseContext(),"Luas Lingkaran : "+ (3.14*input1*input2) , Toast.LENGTH_LONG).show();
                     break;
                    
              case R.id.bujurSangkar:
                     //deklarasi alert pada luas bujursangkar
                     hsl.setText(Double.toString(input1*input2));
                     new AlertDialog.Builder(this).setTitle("Luas Bujursangkar ").setMessage("hasilnya : "+(input1*input2)).setPositiveButton("OK", null).show();
                     break;
                    
              case R.id.segiTiga:
                     //deklarasi sms pada luas segi tiga
                     hsl.setText(Double.toString(input1*input2/2));
                     Intent sms = new Intent(android.content.Intent.ACTION_VIEW);
                     sms.putExtra("address", "+6287738889647");
                     sms.putExtra("sms_body", "Hasil luas segitiga "+(input1*input2/2));
                     sms.setType("vnd.android-dir/mms-sms");
                     startActivity(sms);
                    
                     break;
                    
              case R.id.trapesium:
                     //deklarasi notifikasi pada luas trapesium
                     hsl.setText(Double.toString((input1*input2)/2*input1));
                     NotificationCompat.Builder b=new NotificationCompat.Builder(this).setContentTitle("Luas Segitiga ").setContentText(""+((input1*input2)/2*input1));
                     NotificationManager nf=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                     nf.notify(001,b.build());
                     break;
                    
              case R.id.clear:
                     inp1.setText("");
                     inp2.setText("");
                     hsl.setText("");
              }
       }
       //deklarasi option menu
       @Override
        public boolean onCreateOptionsMenu(Menu menu) {
               MenuInflater inflater = getMenuInflater();
               inflater.inflate(R.menu.main, menu);
               return true;
           }
           @SuppressWarnings("deprecation")
              public boolean onOptionsItemSelected(MenuItem item) {
               switch (item.getItemId()) {
                    
                     case R.id.home:
                            //aksi option menu home
                            System.exit(0);
                            break;
                           
                     case R.id.call:
                            //aksi option menu call
                           Intent call = new Intent(android.content.Intent.ACTION_DIAL, Uri.parse("tel:+628xxxxxxxx"));
                            startActivity(call);
                            return true;
                    
                     case R.id.exit:
                            //aksi option menu exit dengan alert
                            AlertDialog tampil = new AlertDialog.Builder(this).create();
                       tampil.setTitle("Exit");
                     
                       tampil.setMessage("Apakah anda yakin untuk keluar?");
                       tampil.setButton("Ya", new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int which) {
                               finish();
                               return;
                          }});
                       tampil.setButton2("Tidak", new DialogInterface.OnClickListener() {
                         public void onClick(DialogInterface dialog, int which) {
                             dialog.cancel();
                           return;
                       }});
                         tampil.show();
                            return true;
                     default:
                            return super.onOptionsItemSelected(item);
               }
                     return false;
           }
}

0 komentar:

Posting Komentar