Aplikasi pemesanan makanan di android

Aplikasi Pemesanan makanan berbasis Android

Kali ini saya akan membuat aplikasi pemesanan makanan dengan tampilan yg sangat sederhana menggunakan Android Studio.

Tujuan Aplikasi ini di buat yaitu sebagai bentuk pembelajaran untuk saya agar dapat mengasah kemampuan pemrogaman saya supaya kedepannya dapat / bisa membangun Aplikasi yang lebih menarik dan powerfull, sekaligus untuk memenuhi tugas UTS pada mata kuliah mobile programming.


1. Deskripsi aplikasi


     User diharuskan mengisi form :
  • Isi nama di kolom " Masukkan nama njenengan "
  • Pilih menu makanan diantara 2 pilihan, karena harga nasi otomatis sudah ke input kedalam sistem
  • Tentukan jumlah pesanan
  • Ketika di klik tombol pesan sekarang akan ditampilkan berapa jumlah yang harus dibayar
2. Source code aplikasi

    Pembuatan Layout pada activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <LinearLayout xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:padding="30dp"
        tools:context=".MainActivity">
        <EditText
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:hint="Masukan nama njenengan .."
            android:id="@+id/edt_name"
            android:inputType="text"/>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Menu makanan"
            android:textSize="25dp"/>
        <CheckBox
            android:id="@+id/telorbalado_checkbox"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Telor sambel balado"
            android:paddingLeft="16dp"
            android:textSize="15sp"/>
        <CheckBox
            android:id="@+id/jengkolsemur_checkbox"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Semur jengkol"
            android:paddingLeft="16dp"
            android:textSize="15sp"/>

        <View
            android:layout_marginTop="10dp"
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="@color/colorAccent"/>



        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="jumlah"
            android:textSize="25dp"
            android:textAllCaps="true"
            android:layout_marginBottom="16dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <Button
                android:layout_width="48dp"
                android:onClick="increment"
                android:text="+"

                android:layout_height="48dp" />
            <TextView
                android:textColor="#212121"
                android:layout_gravity="center"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="0"
                android:paddingRight="8dp"
                android:paddingLeft="8dp"
                android:id="@+id/quantity_textview"
                android:textSize="25dp"/>
            <Button
                android:layout_width="48dp"
                android:onClick="decrement"
                android:text="-"
                android:layout_height="48dp" />
        </LinearLayout>

        <View
            android:layout_marginTop="10dp"
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="@color/colorAccent"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Harga"
            android:textSize="30dp"
            android:textAllCaps="true"
            android:layout_marginBottom="16dp"/>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="0"
            android:textColor="#212121"
            android:id="@+id/price_textview"
            android:textSize="25dp"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_marginBottom="16dp"
            android:onClick="Submitorder"
            android:layout_height="wrap_content"
            android:text="monggo di pesan menunya"/>


    </LinearLayout>

</ScrollView>


    Design Activity_main.xml



Source Code MainActivity.java

package com.example.reza_161021450158;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.text.NumberFormat;

import static android.R.string.no;
import static android.os.Build.VERSION_CODES.N;

public class MainActivity extends AppCompatActivity {
    int quantity=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void increment(View view){//perintah tombol tambah
        if(quantity==100){
            Toast.makeText(this,"pesanan maximal 50",Toast.LENGTH_SHORT).show();
            return;
        }
        quantity = quantity+1 ;
        display(quantity);
    }
    public void decrement(View view){//perintah tombol tambah
        if (quantity==1){
            Toast.makeText(this,"pesanan minimal 1",Toast.LENGTH_SHORT).show();
            return;
        }
        quantity = quantity -1;
        display(quantity);
    }


    public void Submitorder(View view) {
        EditText nameEditText=(EditText)findViewById(R.id.edt_name);
        String name=nameEditText.getText().toString();
        Log.v("MainActivity","Nama:"+name);

        CheckBox telorbaladoChekBox= (CheckBox) findViewById(R.id.telorbalado_checkbox);
        boolean hastelorbalado=telorbaladoChekBox.isChecked();//mengidentifikasi check
        Log.v("MainActivity","has telorbalado:"+hastelorbalado);

        CheckBox jengkolsemurChekBox= (CheckBox) findViewById(R.id.jengkolsemur_checkbox);
        boolean hasjengkolsemur=jengkolsemurChekBox.isChecked();//mengidentifikasi check
        Log.v("MainActivity","has telorbalado:"+hasjengkolsemur);

        int price=calculateprice(hastelorbalado,hasjengkolsemur);
        String pricemessage=createOrderSummary(price,name,hastelorbalado,hasjengkolsemur);


        displayMessage(pricemessage);

    }
    private int calculateprice(boolean addtelorbalado,boolean addjengkolsemur)
 {
        int harga=5000;

        if(addtelorbalado){
            harga=harga+5000;
        }

        if (addjengkolsemur){
            harga=harga+7000;
        }

        return quantity * harga;
    }
    private String createOrderSummary(int price, String name, boolean addjengkolsemur, boolean addtelorbalado) {//hasil pemesanan
        String pricemessage=" Nama = "+name;
        pricemessage+="\n Tambahkan Semur jengkol =" +addtelorbalado;
        pricemessage+="\n Tambahkan Telor Sambel Balado =" +addjengkolsemur;
        pricemessage+="\n Jumlah Pemesanan =" +quantity;
        pricemessage+="\n Total = Rp " +price;
        pricemessage+="\n Matursuwun";
        return  pricemessage;
    }

    private void displayMessage(String message) {
        TextView priceTextView = (TextView) findViewById(R.id.price_textview);
        priceTextView.setText(message);
    }
    private void display(int number) {
        TextView quantityTextView = (TextView) findViewById(R.id.quantity_textview);
        quantityTextView.setText("" + number);
    }
    private void displayPrice(int number) {
        TextView priceTextView = (TextView) findViewById(R.id.price_textview);
        priceTextView.setText(NumberFormat.getCurrencyInstance().format(number));
    }

}


3. Running Aplikasi melalui emulator pada android studio




Komentar

  1. izin sedot ya gan, lagi butuh referensi nih, oh ya perkenalkan nama saya Yuli Suseno jika berkenan mampir ke web kampus kami ya di ISB Atma Luhur. terima kasih

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Contoh Database normalisasi Toko Bangunan