1、点击按钮跳出菜单栏的控件popwindow,参考http://blog.csdn.net/harvic880925/article/details/49272285
//添加接口
implements View.OnClickListener
//开头定义控件
private Button b_more;
private PopupWindow mPopWindow;
private TextView mMenuTv;
//oncreate中定义
b_more=(ImageButton) findViewById(R.id.main_imagebutton2);
b_more.setOnClickListener(this);
private void showPopupWindow(){
//关联弹窗的layout,并设置在哪个页面弹出
View contentView = LayoutInflater.from(MainActivity.this).inflate(R.layout.more, null);
//关联弹窗
mPopWindow = new PopupWindow(contentView);
//设置弹窗的高宽
mPopWindow.setWidth(300);
mPopWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
//设置背景色
mPopWindow.setBackgroundDrawable(new ColorDrawable(0x00000000));
//设置点击弹窗以外的地方是否会响应点击
mPopWindow.setOutsideTouchable(false);
//设置点击其他地方是否会关闭弹窗
mPopWindow.setFocusable(true);
//获取弹窗的焦点
TextView tv1 = (TextView)contentView.findViewById(R.id.pop_addfriend);
TextView tv2 = (TextView)contentView.findViewById(R.id.pop_managefriend);
tv1.setOnClickListener(this);
tv2.setOnClickListener(this);
//显示弹窗,b_more为点击显示出弹窗的控件,弹窗会在此控件左下弹出
mPopWindow.showAsDropDown(b_more);
}
//按钮响应事件
public void onClick(View view) {
int id=view.getId();
switch(id){
case R.id.pop_addfriend:{
}break;
case R.id.pop_managefriend:{
Intent intent = new Intent(MainActivity.this, ManagefriendActivity.class);
startActivity(intent);
}break;
case R.id.main_imagebutton2:{
showPopupWindow();//点击按钮执行函数、弹出窗体
}break;
}
}
2、listview中item长按事件
//添加接口
implements OnItemLongClickListener
//listview添加监听
listview.setOnItemLongClickListener(this);
//监听响应函数
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
//长按后执行
//view返回为当前视图,position返回的是长按的item是listview中的第几个
}
3、布局样式设置为圆角.xml文件
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<!--设置边距-->
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
<!--控制边界线颜色和大小-->
<stroke
android:width="1dp"
android:color="#969696" />
<!--控制圆角大小-->
<corners android:radius="10dp" />
</shape>