【学习笔记】"ListView滑动删除 ,仿腾讯QQ"(一)

今天看了“鸿祥_”大神的写的“ListView滑动删除,仿腾讯QQ” 。大神果然是大神,第一篇文章,我就看不懂,好多知识需要学习。

1.  文中的一个声明:private LayoutInflater mInflater;  

  什么是LayoutInflater?

  答:主要参考了这篇文章

Android LayoutInflater详解

在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。
具体作用:
1、对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来载入;
2、对于一个已经载入的界面,就可以使用Activiyt.findViewById()方法来获得其中的界面元素。
2.文中的一个方法: touchSlop = ViewConfiguration.get(context).getScaledTouchSlop(); 

touchSlop是指用户滑动的最小距离

touchSlop = ViewConfiguration.get(context).getScaledTouchSlop(); //是一个距离,表示滑动的时候,手的移动要大于这个距离才开始移动控件。

3.文中的一个实例化:

  1. mPopupWindow = new PopupWindow(view, 
  2. LinearLayout.LayoutParams.WRAP_CONTENT,  
  3.                 LinearLayout.LayoutParams.WRAP_CONTENT);  

关于PopupWindow的说明:

Android的对话框有两种:PopupWindow和AlertDialog。它们的不同点在于:AlertDialog的位置固定,而PopupWindow的位置可以随意。

PopupWindow的一种构造方法:public PopupWindow(View contentView, int width, int height)

其中,contentView为要显示的view,width和height为宽和高,值为像素值。

4.获取mPopupWindow的宽和高

需要先调用以下measure,然后再获取。不管程序看起来很怪,不利于理解。

  1. /** 
  2.          * 先调用下measure,否则拿不到宽和高 
  3.          */  
  4.         mPopupWindow.getContentView().measure(00);  
  5.         mPopupWindowHeight = mPopupWindow.getContentView().getMeasuredHeight();  
  6.         mPopupWindowWidth = mPopupWindow.getContentView().getMeasuredWidth();  

OK,先学这么,我得消化消化。

发布了78 篇原创文章 · 获赞 54 · 访问量 30万+

猜你喜欢

转载自blog.csdn.net/chjr1000/article/details/43969207