package com.test.citylist;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.BitmapDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupWindow;public classMainActivity extends Activity implements OnClickListener{privateButton btn_help,btn_menu;privatePopupWindow popupMenu;public voidonCreate(Bundle savedInstanceState) {
super .onCreate(savedInstanceState);
setContentView(R.layout.activity_main);//注册控件并绑定事件
btn_help=(Button)findViewById(R.id.btn_help); //这个是上篇文章中的帮助按钮
btn_menu=(Button)findViewById(R.id.btn_my_menu); //这个是本篇的菜单按钮
btn_help.setOnClickListener( this);
btn_menu.setOnClickListener(this);
}
@Overridepublicboolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);return true;
}
@Overridepublic voidonClick(View v) {//TODO Auto-generated method stub
switch(v.getId()) {caseR.id.btn_help:
Intent intent= newIntent();
intent.setClass(MainActivity.this , HelpActivity. class);
startActivity(intent);break;caseR.id.btn_my_menu:
initPopupMenu();//调用弹出菜单
break;default:break;
}
}//点击我的菜单
private voidinitPopupMenu(){if (popupMenu== null){
LayoutInflater lay=(LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v= lay.inflate(R.layout.popup_menu, null);//点击我的喜爱
((Button)v.findViewById(R.id.btn_my_favorites)).setOnClickListener( newOnClickListener(){
@Overridepublic voidonClick(View view) {
popupMenu.dismiss();
Intent intent= new Intent(MainActivity. this ,MainActivity. class);
startActivity(intent);
}
});//点击我的收藏
((Button)v.findViewById(R.id.btn_my_correction)).setOnClickListener( newOnClickListener(){
@Overridepublic voidonClick(View view) {
popupMenu.dismiss();
Intent intent= new Intent(MainActivity. this ,MainActivity. class);
startActivity(intent);
}
});//点击我的评价
((Button)v.findViewById(R.id.btn_my_evaluation)).setOnClickListener( newOnClickListener(){
@Overridepublic voidonClick(View view) {
popupMenu.dismiss();
Intent intent= new Intent(MainActivity. this ,MainActivity. class);
startActivity(intent);
}
});
popupMenu= new PopupWindow(v, getApplicationContext().getResources().getDisplayMetrics().widthPixels/ 3,
getApplicationContext().getResources().getDisplayMetrics().heightPixels/ 4 , true);
}//设置整个popupwindow的样式。
popupMenu.setBackgroundDrawable( newBitmapDrawable());//使窗口里面的空间显示其相应的效果,比较点击button时背景颜色改变。//如果为false点击相关的空间表面上没有反应,但事件是可以监听到的。//listview的话就没有了作用。
popupMenu.setFocusable( true);
popupMenu.setOutsideTouchable(true);
popupMenu.update();
popupMenu.showAsDropDown(btn_menu);
}
}