1. onTouch方法:onTouch方法是View的 OnTouchListener借口中定义的方法,处理View及其子类被touch是的事件处理.当一个View绑定了OnTouchLister后,当有touch事件触发时,就会调用onTouch方法. 当然,前提是touch时间能够传递到指定的view.Q1:为什么会传递不到呢? (当把手放到View上后,onTouch方法被一遍一遍地被调用) /** * Interface definition for a callback to be…
一.ListView内容变化后,动态刷新的步骤(全局刷新): (1)更新适配器Adapter数据源:(不要使用匿名内部类) (2)调用适配器Adapter的刷新方法notifyDataSetChanged(): 二.ListView中的单个item的数据变化后,动态刷新步骤(局部刷新): 1.引言 有个下载模块,因为可能同时下载好几个数据,所以用的listview展示所有正在下载的内容.因为下载进度要实时更新,所以要不停的调用notifyDateSetChanged刷新数据.这样会不停的重新绘制…
Messenger可以理解为一个是用于发送消息的一个类用法也很多,这里主要分析一下再跨进程的情况下Messenger的实现流程与源码分析.相信结合前面两篇关于aidl解析文章能够更好的对aidl有一个认识.(Android进阶笔记:AIDL内部实现详解 (一).Android进阶笔记:AIDL内部实现详解 (二)) 用法说明 先来看一下Messenger在跨进程通讯时的使用方法,代码如下: Service的代码 //用来传递Messenger中IMessenger public class Se…
接着上一篇分析的aidl的流程解析.知道了aidl主要就是利用Ibinder来实现跨进程通信的.既然是通过对Binder各种方法的封装,那也可以不使用aidl自己通过Binder来实现跨进程通讯.那么这篇博客就主要就写一下通过上篇(Android进阶笔记:AIDL详解(一))总结的知识来自己实现跨进程通讯从而更加透彻的了解aidl的核心逻辑. 首先上一篇博客(Android进阶笔记:AIDL详解(一))中总结出一个结论————“onTransact方法是提供给server端用的,transact…
1.onTouch方法:onTouch方法是View的 OnTouchListener借口中定义的方法,处理View及其子类被touch是的事件处理.当一个View绑定了OnTouchLister后,当有touch事件触发时,就会调用onTouch方法. 当然,前提是touch时间能够传递到指定的view.Q1:为什么会传递不到呢? (当把手放到View上后,onTouch方法被一遍一遍地被调用) /** * Interface definition for a callback to be i…
1. 在Android library中不能使用switch-case语句访问资源ID:在Android library中不能使用switch-case语句访问资源ID的原因分析及解决方案 2. 不能在Activity没有完全显示时显示PopupWindow和Dialog:popupwindow - Problems creating a Popup Window in Android Activity 3. 在多进程之间不要用SharedPreferences共享数据,虽然可以(MODE_MU…
1. Android 中Activity.Window和View之间的关系(比喻): Activity像一个工匠(控制单元),Window像窗户(承载模型),View像窗花(显示视图) LayoutInflater像剪刀,Xml配置像窗花图纸.  2. 详解:       Activity是Android应用程序的载体,允许用户在其上创建一个用户界面,并提供用户处理事件的API,如onKeyEvent, onTouchEvent等. 并维护应用程序的生命周期.Activity本身是个庞大的载体,…
1.  Android游戏当中主要的除了控制类外就是显示类View.SurfaceView是从View基类中派生出来的显示类.android游戏开发中常用的三种视图是:    (1) view.SurfaceView 和 GLSurfaceView的区别如下: • View: 显示视图,内置画布,提供图形绘制函数.触屏事件.按键事件函数等:必须在UI主线程内更新画面,速度较慢 • SurfaceView: 基于view视图进行拓展的视图类,更适合2D游戏的开发:是View的子类,类似使用双缓机制…
1. 要实现" 附近的人" 这功能,然后就研究了下: (1)首先要做的就是要获取到自己当前位置的经纬度(编程获取手机GPS定位模块的信息,进而获取自己当前位置的经纬度) (2)然后就是上传自己的数据给服务器 (3)服务器经过计算然后把符合项目定义的最大距离的附近的人的数据传到前台 (4)前台通过数据来展示 其中最主要的其实就是经纬度的距离的计算: 源码下载地址: https://github.com/feicien/studydemo手机端项目:NearByDemo服务器端项目:Nea…
android支持丰富的对话框,常用4中对话框: 1.AlertDialog: 2.ProgressDialog:进度对话框,这个对话框只是对进度条的封装 3.DatePickerDialog:日期选择对话框,这个对话框只是对DatePicker的包装 4.TimePickerDialog:时间选择对话框,这个对话框只是对TimePicker的包装 AlertDialog ==> AlertDialog支持的4中预定义对话框: 1.带消息.带N个按钮的提示对话框 2.带消息.带N个按钮的列表对话…