Konversi Satuan Panjang
MainActivity.java
package com.example.barni.konversisatuanpanjang;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView status;
EditText ET1;
RadioButton etRB1;
RadioButton etRB2;
RadioButton etRB3;
RadioGroup etRG1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etRB1=(RadioButton) findViewById(R.id.etRB1);
etRB1.setChecked(false);
etRB2=(RadioButton) findViewById(R.id.etRB2);
etRB2.setChecked(false);
etRB3=(RadioButton) findViewById(R.id.etRB3);
etRB3.setChecked(false);
etRG1=(RadioGroup) findViewById(R.id.etRG1);
status=(TextView) findViewById(R.id.status);
ET1=(EditText) findViewById(R.id.etET1);
}
public void onClickBtnHitung(View view) {
if (etRG1.getCheckedRadioButtonId()==-1 && ET1.length()==0){
status.setText("Silahkan input nilai dan pilih satuan");
}
else if (ET1.length()==0){
status.setText("Silahkan input nilai");
}
else if (etRG1.getCheckedRadioButtonId()==-1){
status.setText("Silahkan pilih satuan");
}
else{
double satuan = Double.parseDouble(ET1.getText().toString());
Intent intent = new Intent(MainActivity.this,
ResultActivity.class);
Bundle stn = new Bundle();
if (etRB1.isChecked()){
double hitung = satuan*10;
intent.putExtra("datasatu",Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung", hitung);
intent.putExtra("satuanAkhir", " mm");
}
else if (etRB2.isChecked()){
double hitung = satuan*0.1;
intent.putExtra("datasatu",
Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung", hitung);
intent.putExtra("satuanAkhir", " dm");
}
else if (etRB3.isChecked()){
double hitung = satuan*0.00001;
intent.putExtra("datasatu",Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung",hitung);
intent.putExtra("satuanAkhir", " km");
}
startActivityForResult(intent, 99);
}
}
}
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView status;
EditText ET1;
RadioButton etRB1;
RadioButton etRB2;
RadioButton etRB3;
RadioGroup etRG1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etRB1=(RadioButton) findViewById(R.id.etRB1);
etRB1.setChecked(false);
etRB2=(RadioButton) findViewById(R.id.etRB2);
etRB2.setChecked(false);
etRB3=(RadioButton) findViewById(R.id.etRB3);
etRB3.setChecked(false);
etRG1=(RadioGroup) findViewById(R.id.etRG1);
status=(TextView) findViewById(R.id.status);
ET1=(EditText) findViewById(R.id.etET1);
}
public void onClickBtnHitung(View view) {
if (etRG1.getCheckedRadioButtonId()==-1 && ET1.length()==0){
status.setText("Silahkan input nilai dan pilih satuan");
}
else if (ET1.length()==0){
status.setText("Silahkan input nilai");
}
else if (etRG1.getCheckedRadioButtonId()==-1){
status.setText("Silahkan pilih satuan");
}
else{
double satuan = Double.parseDouble(ET1.getText().toString());
Intent intent = new Intent(MainActivity.this,
ResultActivity.class);
Bundle stn = new Bundle();
if (etRB1.isChecked()){
double hitung = satuan*10;
intent.putExtra("datasatu",Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung", hitung);
intent.putExtra("satuanAkhir", " mm");
}
else if (etRB2.isChecked()){
double hitung = satuan*0.1;
intent.putExtra("datasatu",
Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung", hitung);
intent.putExtra("satuanAkhir", " dm");
}
else if (etRB3.isChecked()){
double hitung = satuan*0.00001;
intent.putExtra("datasatu",Double.parseDouble(ET1.getText().toString()));
intent.putExtra("hitung",hitung);
intent.putExtra("satuanAkhir", " km");
}
startActivityForResult(intent, 99);
}
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:background="@color/et_color2" 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="com.example.barni.konversisatuanpanjang.MainActivity" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Nilai centi meter (cm)" android:textColorHighlight="@color/tv_color" android:id="@+id/etTV1" android:background="#b4b3ff" android:layout_gravity="center_horizontal"/> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="14pt" android:background="@color/et_color" android:layout_marginBottom="20dp" android:id="@+id/etET1" /> <RadioGroup android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/etRG1"> <RadioButton android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="mili meter" android:id="@+id/etRB1"/> <RadioButton android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="desi meter" android:id="@+id/etRB2"/> <RadioButton android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="kilo meter" android:id="@+id/etRB3"/> </RadioGroup> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Hitung" android:id="@+id/etHitung" android:onClick="onClickBtnHitung"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="status" android:layout_gravity="center_horizontal" android:id="@+id/status"/> </LinearLayout>
ResultActivity.java
package com.example.barni.konversisatuanpanjang; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.TextView; public class ResultActivity extends AppCompatActivity { TextView TV3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_result); TV3 = (TextView) findViewById(R.id.etTV3); } public void onStart() { super.onStart(); Intent intent = getIntent(); Bundle stn = getIntent().getExtras(); double satuan = stn.getDouble("datasatu"); double hitung = stn.getDouble("hitung"); String satuanAkhir = stn.getString("satuanAkhir"); TV3.setText(String.valueOf(satuan) + " cm" + "=" + hitung + satuanAkhir); } public void onClickKembali(View view) { Intent intent = new Intent(ResultActivity.this, MainActivity.class); intent.putExtra("datadua", TV3.getText().toString()); setResult(RESULT_OK, intent); finish(); } }
activity_result.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout 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" android:background="@color/bg_color2" tools:context="com.example.barni.konversisatuanpanjang.MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hasil Konversi:" android:layout_gravity="center_horizontal" android:id="@+id/etTV2"/> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:textAppearance="@style/TextAppearance.AppCompat.Large" android:background="@color/bg_color" android:id="@+id/etTV3" android:textAlignment="center"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Kembali" android:textAllCaps="false" android:background="@color/btn_color1" android:layout_gravity="center_horizontal" android:id="@+id/btnKembali" android:onClick="onClickKembali" /> </LinearLayout>
colors.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="colorPrimary">#000000</color> <color name="colorPrimaryDark">#000000</color> <color name="colorAccent">#000000</color> <color name="tv_color">#b4b3ff</color> <color name="et_color">#b455ff</color> <color name="bg_color">#e7e2ff</color> <color name="et_color2">#e7e2ff</color> <color name="bg_color2">#e7e29f</color> <color name="btn_color1">#0ff0ff</color> </resources>
Gambarnya menyusul uploadnya
Printscreen
1. Tampilan awal program
2. Bila memilih Hitung tanpa mengisi nilai dan
memilih satuan
3.
Memasukkan nilai
4.
Memilih HITUNG
namun hanya mengisi nilai centi meter tanpa memilih pilihan satuan lain
5.
Hasil bila memilih satuan
milimeter
6.
Memilih HITUNG namun hanya
memilih satuan tanpa mengisi nilai yang akan di hitung
No comments:
Post a Comment