PopupWindow使用
来源:互联网 发布:arp攻击软件 编辑:程序博客网 时间:2024/04/29 19:49
public class ShowPopUtils { privateView contentView; private PopupWindow popupWindow; public void showPop(Context mc, View m) { LayoutInflater inflater = LayoutInflater.from(mc); contentView = inflater.inflate(R.layout.popup_shop_service, null); popupWindow = new PopupWindow(contentView); contentView.findViewById(R.id.tv_pss_cancel).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { popupWindow.dismiss(); } }); //背景色 不设置背景不能点击外面消失 popupWindow.setBackgroundDrawable(new ColorDrawable(Color.argb(50, 52, 53, 55))); //宽高 popupWindow.setHeight(LinearLayout.LayoutParams.MATCH_PARENT); popupWindow.setWidth(LinearLayout.LayoutParams.MATCH_PARENT); //设置点击窗口外边窗口消失 popupWindow.setOutsideTouchable(true); // 设置此参数获得焦点,否则无法点击 popupWindow.setFocusable(true); //显示位置 activity底部弹出 popupWindow.showAtLocation(mView, Gravity.BOTTOM, 0, 0); } public View getV() { returncontentView; } public void dismiss() { if (popupWindow != null && popupWindow.isShowing()) { popupWindow.dismiss(); } }}布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/transparent" android:orientation="vertical"> <TextView android:id="@+id/tv_pss_bg" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" /> <TextView android:id="@+id/tv_pss_title" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorText" android:gravity="center" android:paddingTop="@dimen/car_10px" android:text="提示" android:textColor="@color/color_setup_text" /> <ListView android:id="@+id/lv_pss_service" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorText" /> <TextView android:id="@+id/tv_pss_cancel" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="@dimen/car_8px" android:layout_marginTop="@dimen/car_5px" android:background="@color/colorText" android:gravity="center" android:padding="@dimen/car_20px" android:text="取消" /></LinearLayout>调用方法 private void showService(final List<DataBean> mList) { final ShowPopUtils showPopUtils = new ShowPopUtils(); //方法调用 传上下文和view showPopUtils.showPop(mContext, findViewById(R.id.tv_asi_rz)); //得到布局 View contentView = showPopUtils.getV(); ListView mLv_service = (ListView) contentView.findViewById(R.id.lv_pss_service); ServiceListAdapter serviceListAdapter = new ServiceListAdapter(mContext, mList); mLv_service.setAdapter(serviceListAdapter); mLv_service.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { showPopUtils.dismiss();//销毁 } }); }位置 1、popupWindow.showAsDropDown(mView);//在控件的正下方 2、popupWindow.showAtLocation(mView, Gravity.BOTTOM, 0, 0);//activity底部弹出 int[] location = new int[2]; mLine.getLocationOnScreen(location); 3、popupWindow.showAtLocation(mView, Gravity.NO_GRAVITY, location[0], location[1] - popupWindow.getHeight());//控件的正上方 4、//控件的左边 popupWindow.showAtLocation(v13, Gravity.NO_GRAVITY, location[0] - popupWindow.getWidth() , location[1] - (popupWindow.getHeight() - v13.getHeight()) / 2);
1 0
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- popupwindow使用
- popupWindow 使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow使用
- PopupWindow 使用
- PopupWindow 使用
- popupwindow使用
- PopupWindow使用
- popupWindow使用
- iOS 工作之余小总结之(六)(1) --四种界面反向传值的方式:属性传值,回调方法传值,委托(代理)传值,block传值
- urllib2.HTTPError: HTTP Error 403: Forbidden
- java字节流
- 关于Python2.0版本与3.0版本中类的区别
- 怎么在linux中安装adobe flash player
- PopupWindow使用
- QT 为按钮添加事件
- Web开发实用网站资源
- C++标准库利用仿函数为map提供排序规则
- javaMail 邮件工厂发送类
- ZCMU-1396-队列
- tomcat6.0.1 配置SSL时报“No Certificate file specified or invalid file format”异常
- 小博老师解析Java核心技术 ——JSwing绘图技术
- Linux下启动tomcat、配置tomcat后台帐号、修改tomcat端口