博客园 - 林J
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=152271
2018-01-23T05:05:23Z
林J
https://www.cnblogs.com/linjzong/
feed.cnblogs.com
https://www.cnblogs.com/linjzong/p/5221604.html
Android:ScrollView和SwipeRefreshLayout高度测量 - 林J
今天组里的同事要做一个奇葩的效果,要求在ScrollView里嵌套一个RefreshLayout。类似代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.co
2016-02-26T11:25:00Z
2016-02-26T11:25:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】今天组里的同事要做一个奇葩的效果,要求在ScrollView里嵌套一个RefreshLayout。类似代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.co <a href="https://www.cnblogs.com/linjzong/p/5221604.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/5201565.html
Gson:自定义TypeAdapter - 林J
当前项目解析json用的工具是google的gson,原因嘛,因为有GsonFormat插件,可以直接把服务端传回的json字符串转成Bean对象。不过在实际使用中出现了以下两个问题: 传回的字符串或者数组为null,使用时若不加空指针判断,容易出现空指针异常。 测试用的数值为0,结果用GsonFo
2016-02-19T08:55:00Z
2016-02-19T08:55:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】当前项目解析json用的工具是google的gson,原因嘛,因为有GsonFormat插件,可以直接把服务端传回的json字符串转成Bean对象。不过在实际使用中出现了以下两个问题: 传回的字符串或者数组为null,使用时若不加空指针判断,容易出现空指针异常。 测试用的数值为0,结果用GsonFo <a href="https://www.cnblogs.com/linjzong/p/5201565.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/5045839.html
Android:自定义Sqlite数据库路径 - 林J
默认的sqlite数据库是放在/data/data/database目录下的,今天看腾讯云IM的demo发现再该路径下找不到它存放消息的数据库,找了下后发现居然是放在/data/data/files目录下的,虽然不知道为什么要放到这个目录,不过仔细想了下突然发觉假如把数据库放到非data目录下的话,...
2015-12-14T09:16:00Z
2015-12-14T09:16:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】默认的sqlite数据库是放在/data/data/database目录下的,今天看腾讯云IM的demo发现再该路径下找不到它存放消息的数据库,找了下后发现居然是放在/data/data/files目录下的,虽然不知道为什么要放到这个目录,不过仔细想了下突然发觉假如把数据库放到非data目录下的话,... <a href="https://www.cnblogs.com/linjzong/p/5045839.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4629800.html
Android:支持多选的本地相册 - 林J
前段时间在做一个动态发布功能,需要用到图片上传。一开始直接调用的系统相册和相机,由于系统相机不支持多选,就花点时间做了个本地相册,在此开源下。先上截图,依次为选择相册界面、相册详情界面、查看图片大图界面相册列表按图片数量降序排序,相册详情列表按图片时间降序排序,对比了下微信和QQ的相册,读取的文件基...
2015-07-08T04:15:00Z
2015-07-08T04:15:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】前段时间在做一个动态发布功能,需要用到图片上传。一开始直接调用的系统相册和相机,由于系统相机不支持多选,就花点时间做了个本地相册,在此开源下。先上截图,依次为选择相册界面、相册详情界面、查看图片大图界面相册列表按图片数量降序排序,相册详情列表按图片时间降序排序,对比了下微信和QQ的相册,读取的文件基... <a href="https://www.cnblogs.com/linjzong/p/4629800.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4627140.html
Android:解决重复打开界面问题 - 林J
点击界面A按钮,打开界面B,由于startActivity操作是异步执行的,假如在短时间内快速点击按钮,可能会导致打开多个B界面,这个时候可以重写Activity的startActivity事件。public class BaseActivity extends Activity { ...
2015-07-07T07:28:00Z
2015-07-07T07:28:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】点击界面A按钮,打开界面B,由于startActivity操作是异步执行的,假如在短时间内快速点击按钮,可能会导致打开多个B界面,这个时候可以重写Activity的startActivity事件。public class BaseActivity extends Activity { ... <a href="https://www.cnblogs.com/linjzong/p/4627140.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4323118.html
Android:ScaleType与Matrix相关 - 林J
关于ScaleType,网上介绍这个枚举对象的文章很多了,不过基本都只是介绍了它的效果。我在做可缩放移动的ImageView时,为了实现图片的缩放和拖动,需要记录图片的原始Matrix,在使用过程中发现,这个原始Matrix和ScaleType有着直接的关系,不同的ScaleType将会直接影响到M...
2015-03-09T07:21:00Z
2015-03-09T07:21:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】关于ScaleType,网上介绍这个枚举对象的文章很多了,不过基本都只是介绍了它的效果。我在做可缩放移动的ImageView时,为了实现图片的缩放和拖动,需要记录图片的原始Matrix,在使用过程中发现,这个原始Matrix和ScaleType有着直接的关系,不同的ScaleType将会直接影响到M... <a href="https://www.cnblogs.com/linjzong/p/4323118.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4242171.html
Android:不同drawable文件夹的区别 - 林J
4.0后,新建android工程,会自动生成drawable,drawalbe-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi,drawable-xxhdpi六个文件夹,除drawable外,其他5个文件夹对应四种级别的density:120dip(l...
2015-01-22T09:01:00Z
2015-01-22T09:01:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】4.0后,新建android工程,会自动生成drawable,drawalbe-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi,drawable-xxhdpi六个文件夹,除drawable外,其他5个文件夹对应四种级别的density:120dip(l... <a href="https://www.cnblogs.com/linjzong/p/4242171.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4240841.html
Android关于inflate的root参数 - 林J
最近在用View inflate(Context context, int resource, ViewGroup root)方法时,在第三个参数root上碰到了点麻烦。一般在写ListView的adapter时,会这样加载自定义列View imageLayout = inflate(getCont...
2015-01-22T01:56:00Z
2015-01-22T01:56:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】最近在用View inflate(Context context, int resource, ViewGroup root)方法时,在第三个参数root上碰到了点麻烦。一般在写ListView的adapter时,会这样加载自定义列View imageLayout = inflate(getCont... <a href="https://www.cnblogs.com/linjzong/p/4240841.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4212474.html
Android:手把手教你打造可缩放移动的ImageView(下) - 林J
在上一篇Android:手把手教你打造可缩放移动的ImageView最后提出了一个注意点:当自定义的MatrixImageView如ViewPager、ListView等带有滑动效果的ViewGroup中时,ImageView自定义的拖动事件会和ViewGroup的滑动事件冲突,并且指出了冲突原因是...
2015-01-09T10:18:00Z
2015-01-09T10:18:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】在上一篇Android:手把手教你打造可缩放移动的ImageView最后提出了一个注意点:当自定义的MatrixImageView如ViewPager、ListView等带有滑动效果的ViewGroup中时,ImageView自定义的拖动事件会和ViewGroup的滑动事件冲突,并且指出了冲突原因是... <a href="https://www.cnblogs.com/linjzong/p/4212474.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4211661.html
Android:手把手教你打造可缩放移动的ImageView(上) - 林J
定义ImageView,实现功能如下:1.初始化时图片垂直居中显示,拉伸图片宽度至ImageView宽度。2.使用两根手指放大缩小图片,可设置最大放大倍数,当图片小于ImageView宽度时,在手指离开屏幕时恢复到ImageView宽度。3.支持双击放大缩小。当图片处于未放大状态时,双击放大至指定倍...
2015-01-08T10:26:00Z
2015-01-08T10:26:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】定义ImageView,实现功能如下:1.初始化时图片垂直居中显示,拉伸图片宽度至ImageView宽度。2.使用两根手指放大缩小图片,可设置最大放大倍数,当图片小于ImageView宽度时,在手指离开屏幕时恢复到ImageView宽度。3.支持双击放大缩小。当图片处于未放大状态时,双击放大至指定倍... <a href="https://www.cnblogs.com/linjzong/p/4211661.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4206283.html
Android:通过滤镜实现点击图片变暗效果 - 林J
实现点击图片(ImageView)变暗效果,有一个较简单的方法,就是讲目标图片设置为背景图片(setBackground),再创建一个selector.xml文件,里面放置一张普通状态时的透明图片,一张点击状态下的棕色半透明图片,将其设置为ImageView的源图片。这样在点击ImageView时,...
2015-01-06T07:51:00Z
2015-01-06T07:51:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】实现点击图片(ImageView)变暗效果,有一个较简单的方法,就是讲目标图片设置为背景图片(setBackground),再创建一个selector.xml文件,里面放置一张普通状态时的透明图片,一张点击状态下的棕色半透明图片,将其设置为ImageView的源图片。这样在点击ImageView时,... <a href="https://www.cnblogs.com/linjzong/p/4206283.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4201266.html
Android 自定义相机Demo源码 - 林J
Github源码:https://github.com/LinJZong/AndroidProject.git模仿360相机,图片资源来源于360相机,仅供学习使用。使用过程中遇到问题或Bug可发我邮箱405376689@qq.com。对了,未做兼容性测试不保证所有机型和sdk版本可通用。截图如下:...
2015-01-04T07:31:00Z
2015-01-04T07:31:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】Github源码:https://github.com/LinJZong/AndroidProject.git模仿360相机,图片资源来源于360相机,仅供学习使用。使用过程中遇到问题或Bug可发我邮箱405376689@qq.com。对了,未做兼容性测试不保证所有机型和sdk版本可通用。截图如下:... <a href="https://www.cnblogs.com/linjzong/p/4201266.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4191891.html
Android:30分钟弄明白Touch事件分发机制 - 林J
Touch事件分发中只有两个主角:ViewGroup和View。Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理。View在ViewGroup内,ViewGroup也可以在其他ViewGroup内,这时候把内部的ViewGro...
2014-12-29T08:13:00Z
2014-12-29T08:13:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】Touch事件分发中只有两个主角:ViewGroup和View。Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理。View在ViewGroup内,ViewGroup也可以在其他ViewGroup内,这时候把内部的ViewGro... <a href="https://www.cnblogs.com/linjzong/p/4191891.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4177502.html
【转】Context.getExternalFilesDir()和Context.getExternalCacheDir()方法 - 林J
应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么...
2014-12-22T01:28:00Z
2014-12-22T01:28:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么... <a href="https://www.cnblogs.com/linjzong/p/4177502.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/4143048.html
Android Binder机制中的异步回调 - 林J
“Binder通信是同步而不是异步的”,但是在实际使用时,是设计成客户端同步而服务端异步。看看Framwork层的各service类java源码便会知道,在客户端调用服务端的各种方法时,通常会传递一个Binder过来,该Binder对象用于服务端做异步回调,而服务端本身会使用handler或队列的方...
2014-12-04T07:47:00Z
2014-12-04T07:47:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】“Binder通信是同步而不是异步的”,但是在实际使用时,是设计成客户端同步而服务端异步。看看Framwork层的各service类java源码便会知道,在客户端调用服务端的各种方法时,通常会传递一个Binder过来,该Binder对象用于服务端做异步回调,而服务端本身会使用handler或队列的方... <a href="https://www.cnblogs.com/linjzong/p/4143048.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/3503031.html
VS加载项目时报错 尚未配置为Web项目XXXX指定的本地IIS - 林J
网上找的几个方法都不行 最后自己解决了。首先打开该项目得csproj文件,找到这个标签,是在最后部分,然后把True改为false,再把XXX里面的内容去掉。重新加载,搞定。希望能给遇到同样问题的朋友一点帮助。
2014-01-03T01:16:00Z
2014-01-03T01:16:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】网上找的几个方法都不行 最后自己解决了。首先打开该项目得csproj文件,找到这个标签,是在最后部分,然后把True改为false,再把XXX里面的内容去掉。重新加载,搞定。希望能给遇到同样问题的朋友一点帮助。 <a href="https://www.cnblogs.com/linjzong/p/3503031.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/3499737.html
下班前码个2013总结吧 - 林J
12年6月离校,到了这家公司,做了一年半多了,估计下个月就要离职,做下总结吧。 大学打了四年游戏,出来的时候基本0基础,很感谢现在的主管,当初“收留”了我。这是一家生产公交车上相关硬件,如报站器,车内屏,还有做电子站牌,总之以生产为主的公司,软件部门只占很小一部分,不过也蛮重要的。部门里人不多,一直在4-6人之间切换,人来来走走,稳定下来的也就是主管一人和另外一个同事。究其原因嘛,也无非就是待遇问题。在杭州3000左右的开发工资也就能应付下应届生吧,而且稍微有点“抱负”的应届生也留不住。不过说真的,我对第一家公司还是很有感情的,而且公司氛围很不错,人都很好,没有那种尖酸刻薄的人,也没什么...
2013-12-31T09:06:00Z
2013-12-31T09:06:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】12年6月离校,到了这家公司,做了一年半多了,估计下个月就要离职,做下总结吧。 大学打了四年游戏,出来的时候基本0基础,很感谢现在的主管,当初“收留”了我。这是一家生产公交车上相关硬件,如报站器,车内屏,还有做电子站牌,总之以生产为主的公司,软件部门只占很小一部分,不过也蛮重要的。部门里人不多,一直在4-6人之间切换,人来来走走,稳定下来的也就是主管一人和另外一个同事。究其原因嘛,也无非就是待遇问题。在杭州3000左右的开发工资也就能应付下应届生吧,而且稍微有点“抱负”的应届生也留不住。不过说真的,我对第一家公司还是很有感情的,而且公司氛围很不错,人都很好,没有那种尖酸刻薄的人,也没什么... <a href="https://www.cnblogs.com/linjzong/p/3499737.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/3494090.html
android ListView 在初始化时多次调用getView()原因分析 - 林J
今天在做一个功能:在初始化ListView时,把第一行背景置为黄色,同时保存第一行对象,用于在点击其他行时将该行重新置为白色。if(position==0){ convertView.setBackgroundColor(Color.YELLOW); lastconvertView=convertView; }结果运行时发现第一行的颜色一直会是黄色而无法改变。调试了之后发现getView中if(position==0) 居然会多次进入,最终导致的结果便是我最后一次取得的lastconvertView并非list...
2013-12-27T06:31:00Z
2013-12-27T06:31:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】今天在做一个功能:在初始化ListView时,把第一行背景置为黄色,同时保存第一行对象,用于在点击其他行时将该行重新置为白色。if(position==0){ convertView.setBackgroundColor(Color.YELLOW); lastconvertView=convertView; }结果运行时发现第一行的颜色一直会是黄色而无法改变。调试了之后发现getView中if(position==0) 居然会多次进入,最终导致的结果便是我最后一次取得的lastconvertView并非list... <a href="https://www.cnblogs.com/linjzong/p/3494090.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/3361634.html
Android BindService中遇到的一个小问题 - 林J
今天在使用BindService的时候遇到个小问题,我希望通过Bindservice获取到这个服务,然后执行服务内的某个自定义方法,如下: if(bindService==null){ Intent serviceinten...
2013-10-10T09:00:00Z
2013-10-10T09:00:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】今天在使用BindService的时候遇到个小问题,我希望通过Bindservice获取到这个服务,然后执行服务内的某个自定义方法,如下: if(bindService==null){ Intent serviceinten... <a href="https://www.cnblogs.com/linjzong/p/3361634.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/linjzong/p/3326109.html
C#读书笔记之并行任务 - 林J
这两天遇到一个多线程任务优化的问题,现在解决了,把心得用例子的形式记下来。假设有四个任务: 任务1:登陆验证(CheckUser) 任务2:验证成功后从Web服务获取数据(GetDataFromWeb) 任务3:验证成功后从数据库获取数据(GetDatFromDb) 任务4:使用2、3的数据执行一个方法 (StartProcess)一个比较笨的方法(本人最开始的方法,记为方法1)是直接开启一个线程,按照顺序依次执行四个任务:new Thread(delegate { CheckUser(); ...
2013-09-17T05:54:00Z
2013-09-17T05:54:00Z
林J
https://www.cnblogs.com/linjzong/
【摘要】这两天遇到一个多线程任务优化的问题,现在解决了,把心得用例子的形式记下来。假设有四个任务: 任务1:登陆验证(CheckUser) 任务2:验证成功后从Web服务获取数据(GetDataFromWeb) 任务3:验证成功后从数据库获取数据(GetDatFromDb) 任务4:使用2、3的数据执行一个方法 (StartProcess)一个比较笨的方法(本人最开始的方法,记为方法1)是直接开启一个线程,按照顺序依次执行四个任务:new Thread(delegate { CheckUser(); ... <a href="https://www.cnblogs.com/linjzong/p/3326109.html" target="_blank">阅读全文</a>