Android ListView Item 使用 relativelayout 高度计算问题

Android ListView Item 使用 relativelayout 高度计算问题

今天同事反馈一个异常的问题,我们在使用relativelayout 作为listview的item的时候,如果relativelayout里面嵌套了别的 layout,而且高度都是用match_parent的话,那么这些layout的高度计算都会有问题

如上所述,我这边的处理办法是,能够整合到一个layout里面的,尽量整个,避免多个layout 重复计算相同的高度,然后relativelayout 使用FrameLayout 去替换,具体产生这个问题的原因我还没有发现,我还是需要有空去看看相关的书和资料,毕竟只是半路出家,如果有知道的朋友能够告知更好

更新:
找到一个相关的资料: http://23pin.logdown.com/posts/161140-api17-inside-the-listview-item-using-relativelayout-attention

我每周必逛的几个博客

我每周必逛的几个博客

Trinea 快的移动端架构师
很多优秀的源码剖析和性能分析

Android开发技术周报: 周更,每周都有一些优秀的博文和开源控件,行业新闻等分享

Android开发者博客
你懂得,老实说我逛得少,英文不咋地

Android周报 - 国外的
你懂得 - 同上

针对上面的网站的内容进行了中文注解的网站
同标题

告诉你你从来不懂AndroidStudio
同标题

油管: Google 开发者频道
同标题

懒人必备,国内Android开发者博客合集

简易视频片段转gif制作

简易视频片段转gif制作

好久没有更新博客了,这个算是给回归立一个flag吧?
今天晚上感觉夏洛特 友利 动筷子好萌,想做个动图,发现上一次做动图已经是1年前的事情了,都已经忘记了怎么做了
大略下载使用了 格式工厂,暴风影音,迅雷看看,QGifer,等都不能很好满足我的需求,因为要么是因为画质被降质了,要么就是帧数太高(qq限制了10帧/秒),所以果断是用回来神器 UleadGIFAnimator,以及视频分割软件 UltraVideoSplitterPortable。

视频分割软件就不谈了,这里主要是讲 UleadGIFAnimator

  1. 用UltraVideoSplitter 分割出需要的片段,片段的扩展名最好是avi
  2. UleadGIFAnimator 打开视频
  3. 使用选择工具选择需要制作成gif的部分
  4. 菜单栏 - 编辑 - 修正画布
  5. 因为帧数问题所以要对应删除部分帧
  6. 导出为gif

我的工具

这里用来介绍我自己的一些工具(最近更新时间:2016年2月23日15:49:28)

开发工具

Android 开发:

Android Studio Android APP 开发第一神器,不需要任何理由

Android 模拟器

Genymotion
非常好用,尤其是Android 6.0,顺滑程度非常出色,针对开发者来说,免费版就已经足够了,不过如果需要开发app的话,需要安装插件
Genymotion-ARM-Translation ,这个随便搜索就行了,拖进虚拟机里面就可以安装,然后要求重启

VMware Workstation

这个用来创建虚拟机效果还是不错的,尤其是虚拟机创建无桌面的linux系统,然后SCRT XSHELL 等进行远程登录访问

c++,winform 开发:

Visual Studio
vs 插件:

  • 番茄插件 Visual Assist X
  • Jetbrains出品的 ReSharper

DB

轻量级sqlite数据库GUI: Sqlitespy
sqlite数据库工具(功能非常多,显示修改更多内容): SQLiteExpertPro

git

gitgui
sourcetree

邮箱

foxmail

浏览器

chrome 插件:

  • Google翻译 如题
  • IE Tab 可以用IE内核访问当前页面
  • Proxy SwitchyOmega: 用于和ss搭配,非常酸爽
  • 百度贴吧助手
  • 印象笔记 剪藏
  • 迅雷远程下载 搭配只能路由器,下载控的福利

协议拦截

HttpAnalyzer

我用这个来拦截pc端的一些http请求

filder

我用这个拦截我的Android系统的http请求

思维导图 FreeMind

谁用谁知道

科学上网

ShadowSocks 谁用谁知道,作者是妹子,可惜被请去喝茶了

小工具

FSCapture: 可以用来进行测量像素,取色等操作,非常方便
马克飞象: 很好看的MarkDown 编辑工具
BCompare: 文本比较工具,可以选择左右复制,搭配sourcetree比较代码很酸爽
老毛桃: U盘装机还是比较傻瓜式的
ADSafe: 广告屏蔽做的还是比较不错的

休闲游戏

光束迷宫: 一个很好玩的益智游戏,可以直接在chrome商店里面搜到

网站

google play apk下载(可以下日区游戏):https://apkpure.com/

AndroidStudio 1.5 内存分析工具 HeapSnapshot

AndroidStudio 1.5 内存分析工具 HeapSnapshot

Android Studio -> Android Monitor -> Memory -> Dump Java Heap

这个工具是我在对Handler内存泄露进行分析的时候发现的工具,一直也没有关注1.5上面的功能
参考链接: http://tools.android.com/recent/androidstudio15preview1available
属性介绍: http://www.tqcto.com/article/software/83565.html
关于jvm内存管理扩展阅读: http://xstarcd.github.io/wiki/Java/JVM_Heap_Non-heap.html
关于java内存区域阅读: http://segmentfault.com/a/1190000002931555
工具研究相关代码: https://github.com/pyystone/MyAndroidStudyNotes/tree/master/app/src/main/java/pyystone/androidstudynotes/memory/handler

首先来一个工具总览

好像不支持放大,可以拖到外面进行查看,我也懒得去切分了~

下面属性来自上面 属性介绍里面的链接:

堆内存中所有的类属性 ClassName

名称 意义
Total Count 内存中该类的对象个数
Heap Count 堆内存中该类的对象个数
Sizeof 物理大小
Shallow size 该对象本身占有内存大小
Retained Size 释放该对象后,节省的内存大小

类里面的所有对象 Instance

名称 意义
depth 深度
Shallow Size 对象本身内存大小
Dominating Size 管辖的内存大小

引用该类的对象 Refrence Tree

属性同上

最后就要上我们的核心功能 Analyzer Tasks

Activity泄露分析 和 重复字符串分析

选中需要分析的点然后点击ProformAnalysis进行分析
点击下面的 Analysis Results 的结果,左边3个表会自动对应到相应的地方