Header Ads

Link Banner

Input with EditText in Messagebox Android Tutorial

Input with EditText in Messagebox Android TutorialPada artikel sebelumnya yang berjudul messagebox android tutorials, saya telah menjelaskan sedikit tentang messagebox pada android dan cara membuatnya, dan kali ini saya akan menjelaskan tentang messagebox juga tapi lebih detail, berikut penjelasannya.

Messagebox di android memiliki banyak fungsi, tergantung dari penggunaannya nanti. Kita bisa menggunakan messagebox untuk menampikan teks atau gambar sebagai informasi, menambah list, radio button atau check list untuk pengaturan, bahkan kita bisa membuat form masukan di dalam messagebox. Dan kali ini saya akan menambahkan masukan ke dalam messagebox, jadi nanti saya akan membuat perhitungan luas persegi panjang dan masing-masing komponen akan dimasukkan ke dalam messagebox. Oke berikut caranya :

Pertama, buat project baru bernama Message Input, dan untuk package beri nama blogsetyaaji.com
Setelah itu, pada activity_main.xml buat kode seperti berikut :


<?xml version="1.0" encoding="utf-8"?>
<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"
    android:orientation="vertical"
    tools:context="com.blogsetyaaji.messagebox.MainActivity">

    <Button
        android:id="@+id/btnInput"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Hitung Luas" />

    <TextView
        android:id="@+id/txthasil"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:text="HASIL"
        android:textSize="20dp"
        android:layout_below="@id/btnInput"
        android:gravity="center"/>

    <Button
        android:id="@+id/btnreset"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="CLEAR"
        android:layout_marginTop="20dp"
        android:layout_below="@id/txthasil"/>

    <Button
        android:id="@+id/btnKeluar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="EXIT"
        android:layout_marginTop="10dp"
        android:layout_below="@id/btnreset"/>


</RelativeLayout>

Pindah ke MainActivity.java, ketikkan kode berikut ini :


package com.blogsetyaaji.messagebox;

import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Color;
import android.provider.ContactsContract;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    Context context = this;

    Button btnKeluar, btnInput, btnreset;
    TextView hasil;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnKeluar = (Button) findViewById(R.id.btnKeluar);
        btnKeluar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Membuat message box
                AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setTitle("EXIT");
                builder.setMessage("Are you sure to exit?");
                // Membuat tombol negativ
                builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                //Membuat tombol positif
                builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // Bila pilih ok, maka muncul toast
                        finish();
                    }
                });
                builder.show();
            }
        });

        btnInput = (Button) findViewById(R.id.btnInput);
        btnInput.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                // Membuat layout
                LinearLayout layoutinput = new LinearLayout(context);
                layoutinput.setOrientation(LinearLayout.VERTICAL);
                layoutinput.setPadding(50,50,50,50);

                // buat id tersembunyi di alertbuilder
                final TextView txtv = new TextView(context);
                txtv.setText("Panjang");
                txtv.setTextColor(Color.BLACK);
                layoutinput.addView(txtv);

                final EditText teks = new EditText(context);
                teks.setInputType(2);
                layoutinput.addView(teks);

                final TextView txtv2 = new TextView(context);
                txtv2.setText("Lebar");
                txtv2.setTextColor(Color.BLACK);
                layoutinput.addView(txtv2);

                final EditText teks2 = new EditText(context);
                teks.setInputType(2);
                layoutinput.addView(teks2);

                AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setTitle("Hitung Luas");
                builder.setView(layoutinput);
                builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                //Membuat tombol positif
                builder.setPositiveButton("Hitung", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // Bila pilih ok, maka muncul toast
                        Toast.makeText(getApplicationContext(), "SUCCES", Toast.LENGTH_SHORT).show();
                        hasil = (TextView) findViewById(R.id.txthasil);
                        // Membuat perhitungan
                        int ang1 = Integer.parseInt(teks.getText().toString());
                        int ang2 = Integer.parseInt(teks2.getText().toString());
                        int hsl = ang1 * ang2;
                        hasil.setText("" +hsl);
                    }
                });
                builder.show();
            }
        });

        btnreset = (Button) findViewById(R.id.btnreset);
        btnreset.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                hasil.setText("HASIL");
            }
        });
    }
}

Sekarang jalankan aplikasinya, tampilannya akan jadi seperti berikut ini

Input with EditText in Messagebox Android Tutorial

Input with EditText in Messagebox Android Tutorial


Input with EditText in Messagebox Android Tutorial

Input with EditText in Messagebox Android Tutorial

Sedikit penjelasan dari kode di atas, sebenarnya konsepnya sama dengan artikel sebelumnya tentang messagebox, hanya saja kali ini saya menambahkan komponen linear layout dan edittext ke dalam messagebox, serta menambahkan fungsi perhitungan luas ke dalam kode messagebox. Saya juga menambahkan fungsi validasi pada tombol keluar dan menambahkan fungsi reset pada tombol reset agar teks hitung kembali seperti semula. Pada komponen edittext di dalam messagebox juga diatur menjadi inputtype number agar selain karakter number tidak bisa diketikkan ke dalam komponen edittext. Untuk rincian kode silahkan sobat teliti kode di atas dan pahami fungsi-fungsinya. Sekian artikel tentang Tutoral Input in Messagebox Android semoga bermanfaat, sekian dari saya dan nantikan artikel menarik lainya, sampai jumpa.

Tidak ada komentar