Menu PopUp Android


Pada contoh menu ini adalah menu memilih Bangun Datar & Ruang yaitu :
  • Bujursangkar
  • Persegipanjang
  • Kubus
  • Balok
Tampilan awal menu :

http://imronkom.blogspot.co.id/


Untuk memunculkan menu klik buttom Bangun Datar dan Ruang yang berlatarbelakang warna biru, tampilan menu sebagai berikut :

http://imronkom.blogspot.co.id/

Untuk memilih menu tersebut, klik salah satu menu, misalkan Bujursangkar maka akan muncul layout Bujursangkar sebagai berikut:


http://imronkom.blogspot.co.id/

Pada Layout Bujursangkar terdapat menu :

  • Gambar Bujursangkar (menampilkan gambar bujursangkar)
  • Mencari Luas Bujursangkar
  • Mencari Kelilingan Bujursangkar
  • Keluar (menu Bangun Datar dan Ruang)

Tampilan layout sebagai berikut:

http://imronkom.blogspot.co.id/

Menu Persegipanjang :
  • Gambar Persegipanjang (menampilkan gambar persegipanjang)
  • Mencari Luas Persegipanjang
  • Mencari Kelilingan Persegipanjang
  • Keluar (menu Bangun Datar dan Ruang)

Menu Kubus :

  • Gambar Kubus (menampilkan gambar Kubus)
  • Mencari volume Kubus
  • Mencari Luas Kubus
  • Mencari Kelilingan Kubus
  • Keluar (menu Bangun Datar dan Ruang)

Menu Balok :

  • Gambar Balok (menampilkan gambar Balok)
  • Mencari volume Balok
  • Mencari Luas Balok
  • Mencari Kelilingan Balok
  • Keluar (menu Bangun Datar dan Ruang)

Value:

strings.xml

xmlversion="1.0"encoding="utf-8"?>
<resources>

<stringname="app_name">Bangun Datar dan Ruang</string>
<stringname="hello_world">Hello world!</string>
<stringname="action_settings">Settings</string>

</resources>


Layout:


activity_main.xml

<RelativeLayoutxmlns: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:background="#fcfcfc"
tools:context="com.wahyudin.mpopbangun.MainActivity">


<Button
android:id="@+id/pilih_click"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="#176CEC"
android:text="Bangun Datar dan Ruang"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold"/>
</RelativeLayout>


bujursangkar.xml

xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bujursangkar"
android:orientation="vertical">

<Button
android:id="@+id/bujursangkar_click"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="#176CEC"
android:text="Bujursangkar"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold"/>
</LinearLayout>


persegipanjang.xml

xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/persegipanjang_click"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="#176CEC"
android:text="Persegipanjang"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold"/>

</LinearLayout>


kubus.xml

xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/kubus_click"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="#176CEC"
android:text="Kubus"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold"/>
</LinearLayout>


balok.xml

xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/balok_click"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="#176CEC"
android:text="Balok"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold"/>
</LinearLayout>


Menu:

mpop.xml

xmlversion="1.0"encoding="utf-8"?>
<menuxmlns:android="http://schemas.android.com/apk/res/android">

<item
android:id="@+id/item_bujursangkar"
android:showAsAction="ifRoom|withText"
android:title="Bujursangkar"
android:visible="true"/>
<item
android:id="@+id/item_persegipanjang"
android:showAsAction="ifRoom|withText"
android:title="Persegipanjang"
android:visible="true"/>
<item
android:id="@+id/item_kubus"
android:showAsAction="ifRoom|withText"
android:title="Kubus"
android:visible="true"/>
<item
android:id="@+id/item_balok"
android:showAsAction="ifRoom|withText"
android:title="Balok"
android:visible="true"/>
</menu>


mbujursangkar.xml:

xmlversion="1.0"encoding="utf-8"?>
<menuxmlns:android="http://schemas.android.com/apk/res/android">

<item
android:id="@+id/item_bujursangkar_gambar"
android:showAsAction="ifRoom|withText"
android:title="Gambar Bujursangkar"
android:visible="true"/>
<item
android:id="@+id/item_bujursangkar_luas"
android:showAsAction="ifRoom|withText"
android:title="Luas Bujursangkar"
android:visible="true"/>
<item
android:id="@+id/item_bujursangkar_keliling"
android:showAsAction="ifRoom|withText"
android:title="Keliling Bujursangkar"
android:visible="true"/>
<item
android:id="@+id/item_bujursangkar_keluar"
android:showAsAction="ifRoom|withText"
android:title="Keluar"
android:visible="true"/>
</menu>



Koding Java:

MainActivity.java

packagecom.wahyudin.mpopbangun;

importandroid.support.v7.app.ActionBarActivity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.PopupMenu;
importandroid.widget.Toast;
importandroid.widget.PopupMenu.OnMenuItemClickListener;

publicclassMainActivity extendsActionBarActivity implementsOnMenuItemClickListener {

@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.pilih_click).setOnClickListener(newOnClickListener() {
@Override
publicvoidonClick(View view) {
PopupMenu popupMenu = newPopupMenu(MainActivity.this, view);
popupMenu.setOnMenuItemClickListener(MainActivity.this);
popupMenu.inflate(R.menu.mpop);
popupMenu.show();
}
});
}

@Override
publicbooleanonMenuItemClick(MenuItem item) {
// TODOAuto-generated method stub
Intent i = null;
switch(item.getItemId()) {
caseR.id.item_bujursangkar:
Toast.makeText(this, "Pilih Bujursangkar", Toast.LENGTH_SHORT).show();
i = new Intent(this,Bujursangkar.class);
startActivity(i);
returntrue;
caseR.id.item_persegipanjang:
Toast.makeText(this, "Pilih Persegipanjang", Toast.LENGTH_SHORT).show();
i = new Intent(this,Persegipanjang.class);
startActivity(i);
returntrue;
caseR.id.item_kubus:
Toast.makeText(this, "Pilih Kubus", Toast.LENGTH_SHORT).show();
i = new Intent(this,Kubus.class);
startActivity(i);
returntrue;
caseR.id.item_balok:
Toast.makeText(this, "Pilih Balog", Toast.LENGTH_SHORT).show();
i = new Intent(this,Balok.class);
startActivity(i);
returntrue;
}
returnfalse;
}
}

Bujursangkar.java:

packagecom.wahyudin.mpopbangun;

importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.support.v7.app.ActionBarActivity;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.PopupMenu;
importandroid.widget.Toast;
importandroid.widget.PopupMenu.OnMenuItemClickListener;

publicclassBujursangkar extendsActionBarActivity implementsOnMenuItemClickListener {

@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.bujursangkar);
findViewById(R.id.bujursangkar_click).setOnClickListener(newOnClickListener() {
@Override
publicvoidonClick(View view) {
PopupMenu popupMenu = newPopupMenu(Bujursangkar.this, view);
popupMenu.setOnMenuItemClickListener(Bujursangkar.this);
popupMenu.inflate(R.menu.mbujursangkar);
popupMenu.show();
}
});
}
@Override
publicbooleanonMenuItemClick(MenuItem item) {
// TODOAuto-generated method stub
Intent i = null;
switch(item.getItemId()) {
caseR.id.item_bujursangkar_gambar:
Toast.makeText(this, "Pilih Gambar Bujursangkar", Toast.LENGTH_SHORT).show();
returntrue;
caseR.id.item_bujursangkar_luas:
Toast.makeText(this, "Pilih Luas Bujursangkar", Toast.LENGTH_SHORT).show();
returntrue;
caseR.id.item_bujursangkar_keliling:
Toast.makeText(this, "Pilih Keliling Bujursangkar", Toast.LENGTH_SHORT).show();
returntrue;
caseR.id.item_bujursangkar_keluar:
Toast.makeText(this, "Pilih Keluar", Toast.LENGTH_SHORT).show();
i = new Intent(this,MainActivity.class);
startActivity(i);
returntrue;
}

returnfalse;
}

}


Persegipanjang.java:

packagecom.wahyudin.mpopbangun;

importandroid.os.Bundle;
importandroid.support.v7.app.ActionBarActivity;
importandroid.view.MenuItem;
importandroid.widget.PopupMenu.OnMenuItemClickListener;

publicclassPersegipanjang extendsActionBarActivity implementsOnMenuItemClickListener {

@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.persegipanjang);
}
@Override
publicbooleanonMenuItemClick(MenuItem item) {
// TODOAuto-generated method stub
returnfalse;
}

}


Kubus.java

packagecom.wahyudin.mpopbangun;

importandroid.os.Bundle;
importandroid.support.v7.app.ActionBarActivity;
importandroid.view.MenuItem;
importandroid.widget.PopupMenu.OnMenuItemClickListener;

publicclassKubus extendsActionBarActivity implementsOnMenuItemClickListener {

@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.kubus);
}
@Override
publicbooleanonMenuItemClick(MenuItem item) {
// TODOAuto-generated method stub
returnfalse;
}


}


Balok.java

packagecom.wahyudin.mpopbangun;

importandroid.os.Bundle;
importandroid.support.v7.app.ActionBarActivity;
importandroid.view.MenuItem;
importandroid.widget.PopupMenu.OnMenuItemClickListener;

publicclassBalok extendsActionBarActivity implementsOnMenuItemClickListener {

@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.balok);
}
@Override
publicbooleanonMenuItemClick(MenuItem item) {
// TODOAuto-generated method stub
returnfalse;
}


}



Contoh Projeck diatas belum selesai, silahkan anda selesai, membuat layout, menu dan koding java gambar bujursangkar, luas bujursangkar, keliling bujursangkar. Selesaikan juga untuk bangun yang lainya.


0 Response to "Menu PopUp Android"

Post a Comment