项目中点击imageview显示popupWindow,删除,退出等
来源:互联网 发布:macpro软件卸不掉 编辑:程序博客网 时间:2024/06/06 09:53
适配器public class MyBase extends BaseAdapter { Context context; List<InfoUtils.ResultBean.BookListBean> list; private final LayoutInflater inflater; private PopupWindow popwindow; private View viewpop; private PopupWindow popupWindow; private TextView delete; private ImageView colse; public MyBase(Context context, List<InfoUtils.ResultBean.BookListBean> list) { this.context = context; this.list = list; inflater = LayoutInflater.from(context); initpop(); } public void add(Context context, List<InfoUtils.ResultBean.BookListBean> list1,boolean flag){ for (InfoUtils.ResultBean.BookListBean bean: list1) { if (flag){ list.add(0,bean); }else { list.add(bean); } } } @Override public int getCount() { return list!=null?list.size():0; } @Override public Object getItem(int position) { return list.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView==null){ holder = new ViewHolder(); convertView = inflater.inflate(R.layout.fragment_layout,null); holder.name = (TextView) convertView.findViewById(R.id.text_view1); holder.type = (TextView) convertView.findViewById(R.id.text_view2); holder.area = (TextView) convertView.findViewById(R.id.text_view3); holder.image = (ImageView) convertView.findViewById(R.id.image_view); holder.more = (ImageView) convertView.findViewById(pop); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } holder.name.setText(list.get(position).getName()); holder.type.setText(list.get(position).getType()); holder.area.setText(list.get(position).getArea()); holder.more.setOnClickListener(new Popaction(position)); x.image().bind(holder.image,list.get(position).getCoverImg()); return convertView; } class Popaction implements View.OnClickListener{ private int position; public Popaction(int position) { this.position = position; } @Override public void onClick(View v) { int[] array = new int[2]; v.getLocationOnScreen(array); int x = array[0]; int y = array[1]; showpop(v,position,x,y); } } public void initpop(){ viewpop = inflater.inflate(R.layout.item,null); popupWindow = new PopupWindow(viewpop, ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); popupWindow.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#000000"))); delete = (TextView) viewpop.findViewById(R.id.delete_tv); colse = (ImageView) viewpop.findViewById(R.id.close_iv); } public void showpop(View view, final int position, int x, int y){ popupWindow.showAtLocation(view,0,x,y); popupWindow.setFocusable(true); popupWindow.setOutsideTouchable(true); colse.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (popupWindow.isShowing()){ popupWindow.dismiss(); } } }); delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { list.remove(position); notifyDataSetChanged(); if (popupWindow.isShowing()){ popupWindow.dismiss(); } } }); } class ViewHolder{ private TextView name; private TextView type; private TextView area; private ImageView image; private ImageView more; }}Activityif (base==null){ base = new MyBase(getActivity(),list); xListView.setAdapter(base);}else { base.add(getActivity(),list,flag); base.notifyDataSetChanged();}
XML<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:minWidth="220dp" android:minHeight="40dp" android:gravity="center" ><TextView android:text="阅读" android:textColor="#ffffff" android:id="@+id/read_tv" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" /><TextView android:text="收藏" android:textColor="#ffffff" android:id="@+id/collect_tv" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" /><TextView android:text="删除" android:textColor="#ffffff" android:id="@+id/delete_tv" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" /><ImageView android:src="@drawable/close" android:id="@+id/close_iv" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center" /></LinearLayout>
阅读全文
1 0
- 项目中点击imageview显示popupWindow,删除,退出等
- android ,点击title的ImageView弹出PopupWindow
- 点击返回键退出popupwindow的方法
- PopupWindow点击显示的处理
- ListView中ImageView 点击显示在 Toast 上
- Android popupwindow点击显示,再点击消失
- Popupwindow中显示listview
- popupwindow中显示gridview
- 点击显示一个样式自定义的Popupwindow
- android 如何让PopupWindow显示在ImageView的下方
- 关于点击显示PopupWindow再次点击消失的问题
- 接口回调----点击item中的ImageView,在Activity中显示dialog
- Android 中 PopupWindow 点击窗口外消失
- android popupwindow 中listview 无法点击问题
- PopupWindow中ListView无法点击的问题
- popupwindow中按钮的点击事件
- Android中PopupWindow点击返回按钮关闭
- Android点击View显示PopupWindow,再次重复点击View关闭PopupWindow
- php各个版本的区别
- 使用ajax简单的仿照售房网站上根据城市,区域和街道选择房屋信息
- PHP中使用CURL
- Android动画-RotateAnimation
- python中单,双引号和三个双引号的区别
- 项目中点击imageview显示popupWindow,删除,退出等
- 已经 安装了 php php -v 报错
- 网易2018校招内推编程题_疯狂队列
- 深入浅出mysql事务处理和锁机制
- 从零开发一个完整的Android项目(三)——常量的定义
- 最大熵学习笔记(一)预备知识
- Jackson
- C#调用TeeChart显示数据,当放大时,怎样当前图表中获取X轴的最小值和最大值
- 动态库调用静态库示例讲解(3)