Professional Documents
Culture Documents
DASAR PROGRAMMING 2
DOSEN :
RENI SOELISTIJORINI
OLEH:
GINARIS AJENG PENGGALIH (1210131018)
Activity_main.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.atm.MainActivity"
tools:ignore="MergeRootFrame" >
<LinearLayout
android:layout_width="286dp"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/textView1"
android:layout_marginTop="20dp"
android:layout_marginLeft="15dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2.20"
android:text="SELAMAT DATANG DI SURABAYA BANK" />
</LinearLayout>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="110dp"
android:layout_marginTop="140dp"
android:text="Next" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="75dp"
android:layout_marginTop="50dp"
android:text="Masukkan PIN anda: " />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="40dp"
android:layout_marginTop="70dp"
android:layout_weight="0.48"
android:ems="10"
android:inputType="numberPassword" >
<requestFocus />
</EditText>
</FrameLayout>
Atm2.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pilih Menu: "/>
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Informasi Saldo" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Penarikan" />
<RadioButton
android:id="@+id/radioButton3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Transfer" />
<RadioButton
android:id="@+id/radioButton4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Keluar" />
<Button
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Next" />
<Button
android:id="@+id/button2"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
Passwordsalah.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
<Button
android:layout_marginTop="30dp"
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
Penarikan.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan Nominal Penarikan" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" >
<requestFocus />
</EditText>
<Button
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Enter" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:id="@+id/button2"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
Saldo.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:layout_marginTop="30dp"
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="back" />
</LinearLayout>
Transfer.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pilihan Bank" />
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bank yang sama" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Lain Bank" />
<Button
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Enter" />
<Button
android:id="@+id/button2"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
Transfer2.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan nomor rekening" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberSigned" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan nominal" />
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" />
<Button
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Enter" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:id="@+id/button2"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
Transfer3.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan Nomor Rekening" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberSigned" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan Nama Bank" />
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masukkan Nominal" />
<EditText
android:id="@+id/editText3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="numberDecimal" />
<Button
android:id="@+id/button1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Enter" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:id="@+id/button2"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="Back" />
</LinearLayout>
MainActivity.java
package com.example.atm;
import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
Atm2.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RadioButton;
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent p=new Intent(atm2.this,MainActivity.class);
finish();
startActivity(p);
}
});
}
class klik implements Button.OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(rd1.isChecked()){
Intent x=new Intent(atm2.this,saldo.class);
finish();
startActivity(x);
}
if(rd2.isChecked()){
Intent y=new Intent(atm2.this,penarikan.class);
finish();
startActivity(y);
}
if(rd3.isChecked()){
Intent z=new Intent(atm2.this,transfer.class);
finish();
startActivity(z);
}
if(rd4.isChecked()){
Intent s=new Intent(atm2.this,MainActivity.class);
finish();
startActivity(s);
}
}
Passwordsalah.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
}
});
}
}
Saldo.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent backs=new Intent(saldo.this,atm2.class);
finish();
startActivity(backs);
}
});
Penarikan.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
nominal=(EditText)findViewById(R.id.editText1);
enter=(Button)findViewById(R.id.button1);
back=(Button)findViewById(R.id.button2);
penarikan=(TextView)findViewById(R.id.textView2);
saldo=(TextView)findViewById(R.id.textView3);
enter.setOnClickListener(new klik());
}
class klik implements Button.OnClickListener{
@Override
public void onClick(View arg0)
{
// TODO Auto-generated method stub
nominal1=nominal.getText().toString();
nominal_ok=Integer.parseInt(nominal1);
penarikan.setText("Nominal yang anda tarik senilai "+nominal_ok);
{
if(nominal_ok<=MainActivity.saldo1)
{
MainActivity.saldo1=MainActivity.saldo1-nominal_ok;
saldo.setText("Saldo anda saat ini senilai"+MainActivity.saldo1);
}
else if(nominal_ok>1500000)
{
saldo.setText("Maaf nominal yang anda masukkan melebihi saldo
anda");
}
}
back.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent bc=new Intent(penarikan.this,atm2.class);
finish();
startActivity(bc);
}
});
}
}
}
Transfer.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RadioButton;
bankln=(RadioButton)findViewById(R.id.radioButton1);
bankd=(RadioButton)findViewById(R.id.radioButton2);
next=(Button)findViewById(R.id.button1);
next.setOnClickListener(new klik());
back=(Button)findViewById(R.id.button2);
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent yu=new Intent(transfer.this,atm2.class);
finish();
startActivity(yu);
}
});
}
class klik implements Button.OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if (bankln.isChecked()){
Intent x=new Intent(transfer.this,transfer2.class);
finish();
startActivity(x);
}
if(bankd.isChecked()){
Intent f=new Intent(transfer.this,transfer3.class);
finish();
startActivity(f);
}
}
}
}
Transfer2.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
rekening=(EditText)findViewById(R.id.editText1);
nomn=(EditText)findViewById(R.id.editText2);
a=(TextView)findViewById(R.id.textView3);
b=(TextView)findViewById(R.id.textView4);
enter=(Button)findViewById(R.id.button1);
enter.setOnClickListener(new klik());
back=(Button)findViewById(R.id.button2);
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent bk=new Intent(transfer2.this,transfer.class);
finish();
startActivity(bk);
}
});
}
class klik implements Button.OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
rekening1=rekening.getText().toString();
nomn1=nomn.getText().toString();
rekening_ok=Integer.parseInt(rekening1);
nomn_ok=Integer.parseInt(nomn1);
a.setText("Nominal yang anda transfer senilai "+nomn_ok);
if(rekening_ok==1234567890){
MainActivity.saldo1=MainActivity.saldo1+nomn_ok;
b.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
if(rekening_ok!=1234567890){
MainActivity.saldo1=MainActivity.saldo1-nomn_ok;
b.setText("Saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
}
}
}
Transfer3.java
package com.example.atm;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
rekening3=(EditText)findViewById(R.id.editText1);
bank3=(EditText)findViewById(R.id.editText2);
nominal3=(EditText)findViewById(R.id.editText3);
transfer3=(TextView)findViewById(R.id.textView4);
saldo3=(TextView)findViewById(R.id.textView5);
enter3=(Button)findViewById(R.id.button1);
back3=(Button)findViewById(R.id.button2);
enter3.setOnClickListener(new klik());
back3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent back3=new Intent(transfer3.this,transfer.class);
finish();
startActivity(back3);
}
});
}
class klik implements Button.OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
rekeningp=rekening3.getText().toString();
bankp=bank3.getText().toString();
nominalp=nominal3.getText().toString();
rekening_ok3=Integer.parseInt(rekeningp);
nominal_ok3=Integer.parseInt(nominalp);
transfer3.setText("Nominal yang anda masukkan senilai "+nominal_ok3);
if(rekening_ok3==1234567890){
MainActivity.saldo1=((MainActivity.saldo1+nominal_ok3)-10000);
saldo3.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
if(rekening_ok3!=1234567890){
MainActivity.saldo1=((MainActivity.saldo1-nominal_ok3)-10000);
saldo3.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.atm"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.atm.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</manifest>
Tampilan:
MainActivity
Saldo
Atm2
Transfer
Transfer2 Jika selain rekening 1234567890
Jika ke rekening 1234567890
Project ini adalah program untuk membuat ATM sederhana tanpa database yang memuat PIN
ATM, dsb. ATM sederhana ini di setting hanya bisa memasukkan kode PIN 1234567890, selain kode
PIN tersebut, ATM tidak akan meneruskan programnya. Pertama, untuk mengeset hanya PIN
1234567890 saja yang dapat sign in, kita menggunakan pernyataan if else. Seperti ini:
if(p2==1234567890){
Intent a=new Intent(MainActivity.this,atm2.class);
finish();
startActivity(a);
}
if(p2!=1234567890){
Intent a1=new Intent(MainActivity.this,passwordsalah.class);
finish();
startActivity(a1);
}
Kode program tersebut menyatakan, jika p2 yang kita sebut sebagai password/PIN sama dengan
1234567890 maka, program akan masuk pada Intent, dimana Intent akan melakukan tugasnya untuk
memindahkan layout MainActivity ke layout atm2. Namun, apabila password/PIN tidak sama dengan
1234567890, maka Intent akan memindahkan layout dari layout MainActivity ke layout passwordsalah.
Setelah kita sudah berhasil sign in, kita akan mengecek jumlah saldo yang pada awal program
java (MainActivity.java) telah dideklarasikan bahwa saldo awal bernilai 1500000.
public static int saldo1=1500000;
Pendefinisian memakai public static int pada MainActivity berungsi agar int saldo1 dapat diakses oleh
kelas lain yang memerlukan variable saldo1. Setelah dicek, saldo awal kita dapatkan 1500000. Setelah itu,
kita akan menu transfer, dimana menu transfer tersebut memiliki 2 sub menu. Yang pertama transfer
untuk bank yang sama, dn yang kedua untuk berlaian bank. Untuk masing-masing submenu, terdiri dari
dua pernyataan, yaitu apabila transfer dilakukan ke rekening 1234567890 dn transfer dilakukan ke
rekening selain 1234567890. Berikut adalah pernyataan if else untuk bank yang sama.
if(rekening_ok==1234567890){
MainActivity.saldo1=MainActivity.saldo1+nomn_ok;
b.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
if(rekening_ok!=1234567890){
MainActivity.saldo1=MainActivity.saldo1-nomn_ok;
b.setText("Saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
Dan berikut adalah pernyataan if lse untuk transfer berbeda bank
if(rekening_ok3==1234567890){
MainActivity.saldo1=((MainActivity.saldo1+nominal_ok3)-10000);
saldo3.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
if(rekening_ok3!=1234567890){
MainActivity.saldo1=((MainActivity.saldo1-nominal_ok3)-10000);
saldo3.setText("saldo anda saat ini adalah senilai "+MainActivity.saldo1);
}
dimana p1 adalah password yang berasal dari TextView password yang diconvert menjadi jenis string,
lalu p2 adalah hasil convert dari tring menjadi integer.
Jika terdapat suatu button dimana button tersebut apabila di klik akan melakukan suau proses, maka kita
menggunakan setOnClckListener(new klik()); dimana kelas klik akan kita buat setelah membuat
setOnClickListener. Klas klik akan berisi proses-proses yang selanjutnya apabila button di klik proses
akan berjalan dan akan menghasilkan suatu otuputan. Apbila button yang di klik hanya akan berpindah
layout, kita menggunakan setOnClickListener(new View.OnClickListener(){ });. Didalam
View.OnClickListener terdapat unimplemets field yang berisi proses Intent untuk berganti layout.