版本至少要3.0以上(API 11)
package com.example.popmenu;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView text = (TextView) this.findViewById(R.id.textView1);
Button buttonPopMenu = (Button) this.findViewById(R.id.startpopupmenu);
buttonPopMenu.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
PopupMenu popMenu = new PopupMenu(MainActivity.this, v);
popMenu.getMenuInflater().inflate(R.menu.popupmenu, popMenu.getMenu());
popMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
// TODO Auto-generated method stub
//Do something...
switch(item.getItemId()){
case R.id.menu1:
text.setText("Number 1");
break;
case R.id.menu2:
text.setText("Number 2");
break;
case R.id.menu3:
text.setText("Number 3");
break;
}
return false;
}
});
popMenu.show();
}});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
No comments:
Post a Comment