
android
文章平均质量分 87
Hubert__
坚持!
展开
-
android 自学日记(五) ——ListView
ListViewListView是最常用的控件之一,它以垂直列表的形式显示所有列表项,是比较难用好,也非常重要的。 使用基础ListView;自定义ListView界面;性能优化;分割线、滚动条、点击效果;item定位;动态修改listView内容;遍历item;处理空内容的listView;listView滑动监听;原创 2016-04-28 12:11:16 · 680 阅读 · 0 评论 -
android-stuido设置 配置
设置主题,窗口大小,动画效果①修改主题 ②修改全局窗口字体(需要选择中文字体,最好默认不做修改),字号 ③ 窗口动画(电脑性能不怎样可以禁止掉) 修改menu或者toolBar这里我是添加了创建class,fragment,activity的ToolBar,这个根据个人情况 打开工程设置①禁用自动打开上次关闭工程 ,禁用退出提示 ②打开新项目提示方式 禁用自动检查更新①取消as自动更新 ②转载 2016-10-18 21:06:12 · 1017 阅读 · 0 评论 -
android面试题
2017.5补充:线程和进程的区别进程是资源分配的最小单位,线程是cpu调度的最小单位。 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个原创 2017-04-12 06:53:26 · 5452 阅读 · 3 评论 -
Mac编译android源码
原本我只是一个开发app应用的android开发工程师,无奈被赶鸭子上架,公司要求我编译android源码,转战系统层的开发。于是上网研究如何编译,资料还是挺多的,看着也不是很难,马上自己上手,结果发现问题还是很多。首先当然是跟着官方的教程: https://source.android.com/source/building 描述最详细的,如果英语不要的话可以结合着看下这篇文章,差不多是翻译原创 2017-04-27 10:12:09 · 720 阅读 · 0 评论 -
Android自定义View 时段选择器
android 自定义view 实践原创 2017-06-22 16:51:22 · 1361 阅读 · 1 评论 -
android 实用知识点
此篇文章为记录我android开发工作中使用一些小功能或小技巧,相信总会有你需要的。不定时更新。。。。动态改变EditText的输入内容mIdentificationEt.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequ原创 2016-10-26 15:46:30 · 435 阅读 · 0 评论 -
推荐一个好用小巧的Android引导蒙版(浮层)库
前言每当一个项目开发一个新功能,总会想办法及时让用户得知有这样一个新功能,这时通常会采用引导页或者蒙版(浮层)的方式提心用户,这里有需要关注的新内容。 遇到这种需求,最简单的想法就是将引导的布局直接写在对应的页面中,在首次打开时显示,之后隐藏。但是用这种做法来显示只会出现一次的布局,显然有些浪费资源。而且很low,完全体现不出OOP的编程思想。我们的项目中原来使用的是:http://www.jia原创 2017-07-30 14:07:26 · 4145 阅读 · 2 评论 -
Kotlin 实战翻译 —— 仿微信图片选择开源库ImagePicker
自看了Kotlin的教程后,总感觉简短的示例代码并不能熟练掌握Kotlin,而直接从公司项目练手又又太过风险了。 正巧项目中用到的一个仿微信图片选择库ImagePicker出现了进图片预览界面crash的bug(android.os.TransactionTooLargeException),查找github发现作者已经声明不维护这个库了,issues中也有人提出类似的问题,但并没有解决。于是只能原创 2017-10-24 17:41:34 · 1090 阅读 · 0 评论 -
Architecture Components之LiveData的扩展
最近研究了一下Architecture Components,尝试用这个架构写了一个小demo,发现了一些问题,也有了一些心得,想分享给大家。原创 2017-12-11 13:32:10 · 1661 阅读 · 0 评论 -
Architecture Components源码分析之ViewModel
如果还不清楚什么是ViewModel,可以看下[译] Architecture Components 之 ViewModel 这个系列的文章,翻译自Android Developer的官方文章。ViewModel 类是被设计用来存储和管理 UI 相关的数据,主要实现了两个功能: 1. 在配置更改(如:屏幕旋转)时数据可以保留下来。 2. 在 Fragment 之间共享数据。接下来会通过分析源码的原创 2017-12-26 10:28:06 · 531 阅读 · 0 评论 -
Android使用责任链模式处理二维码扫描结果
众所周知,二维码的扫描结果其实就是一个字符串,我们拿到一个结果需要对内容进行校验,是否是我们需要的信息,然后做一些特殊的处理。比如先判断是不是一个url链接,是则打开这个链接,不是的话进行下一种判断,比如是否是项目中的约定的跳转某个功能的信息…依次下去。普通的做法是使用if-else或者switch-case,但是当有很多种情况需要处理,则会出现很多的if-else,并且每增加一种处理,就需要原创 2018-02-02 13:58:31 · 427 阅读 · 0 评论 -
apt(Annotation Processor Tool) 注解处理知识汇总
【Annotation】Processing-Tool详解注解(Annotation)是java 1.5的新特性,是一种能够添加到 Java 源代码的语法元数据。类、方法、变量、参数、包都可以被注解,可用来将信息元数据与程序元素进行关联。元注解元注解就是用来描述注解的注解,在java中有以下几个元注解:@Documented作用是告诉JavaDoc工具,当前注解...转载 2018-02-11 15:18:23 · 911 阅读 · 0 评论 -
Android拖拽详解
Android中实现拖拽其实很简单,系统早已经提供了api让我使用,主要用到了View的startDrag(startDragAndDrop API24+) 方法以及OnDragListener。startDrag先来看下方法介绍:/** * Starts a drag and drop operation. When your application calls t...原创 2018-03-09 16:44:21 · 5993 阅读 · 1 评论 -
可能是最详细的ARouter源码分析
组件化被越来越多的Android项目采用,而作为组件化的基础——路由也是重中之重。本篇文章将详细的分析阿里巴巴开源的路由框架ARouter。从源码的角度解释为什么这样使用,以及避免做什么,让你使用地更加顺滑。项目地址ARouter项目结构我们把项目clone到本地,打开ARouter项目,可以看到分为如下几个Module:其中app、module-java、modu...原创 2018-05-07 15:22:09 · 1779 阅读 · 0 评论 -
Android自定义View之区块选择器
最近撸了一个自定义view,还是比较复杂的,感觉有必要分享下实现的过程。效果先来看下效果吧:我们来分析这个view需要实现哪些效果。 + 首先它有一个刻度尺代表了时间段(也可以是别的什么),并且可以看到完整的刻度尺是比屏幕宽度大的,因此肯定需要可以左右滑动。 + 其次,可以有不可选的区域(gif中灰色块)和选中的区域(gif中蓝色块),点击刻度的空白位置出现或者移动选中区域...原创 2018-05-30 14:36:39 · 895 阅读 · 1 评论 -
录制App操作生成Gif动态图教程(Android)
本文转载自:http://www.jb51.net/article/78236.htmAndroid App开发完了,或者写了某个特别厉害的功能,自然希望录个gif做个展示。 下图是我录制的一个短信轰炸机应用的效果图: 本文教大家如何录制gif,分享给大家供大家参考,具体内容如下思路生成gif的思路是两步 1、把App操作过程录制成视频 2、根据视频转换成Gif 目前网上录制GIf的思路也转载 2017-05-05 09:45:29 · 1724 阅读 · 0 评论 -
解决ViewPager与父ViewGrop的事件冲突
ViewPager必然消耗事件,父View无法获取事件原创 2017-04-02 21:02:05 · 958 阅读 · 0 评论 -
android常用设计模式
转载自:http://my.oschina.net/u/2249934/blog/343441前言:Android开发的设计模式,基本设计思想源于java的设计模式,java的设计模式有N多种,据不完全统计,迄今为止,网络出现最频繁的大概有23种。单例模式(Singleton):观察者模式(Observer):代理模式(Proxy ):转载 2016-04-30 14:31:34 · 605 阅读 · 0 评论 -
android常用UI控件总结
TextView 文本框EditText 编辑框Button 按钮RadioGrop 单选按钮组 RadioButton 单选按钮CheckBox 复选框ToggleButton 状态开关按钮Switch 开关AnalogClock 时钟TextClock 数字时钟Chronometer 计时器ImageView 图片框ImageButton 图片按钮ZoomButton 图片放大缩小原创 2016-05-13 12:28:43 · 777 阅读 · 1 评论 -
andrid 自学日记(二) ---Activity
andrid 自学日记(二) —ActivityActivity实现;Activity配置;Activity启动和结束;Activity生命周期;Activity启动模式;Activity的小技巧原创 2016-04-19 16:55:34 · 652 阅读 · 0 评论 -
android 自学日记(三) ---Intent
什么是Intent?显示intent;隐式intent;intent属性;原创 2016-04-20 11:59:06 · 753 阅读 · 0 评论 -
android 自学日记(四) ---ActionBar
启动和关闭ActionBar;添加ActionBar的菜单选项;ActionBar选项的点击事件;图标导航;原创 2016-04-21 11:36:13 · 619 阅读 · 0 评论 -
android 自学日记(六) ——SAX解析中换行问题解决
今天在写一个小项目的时候用到了SAX解析,遇到了一点小问题,网上找了好久都没有解决,最后还是自己发现了解决方法,特地和大家分享一下!原创 2016-05-05 20:42:00 · 2159 阅读 · 0 评论 -
Android点击EditText文本框之外任何地方隐藏键盘的解决办法
android:windowSoftInputModeactivity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。这个属性能影响两件事情:【一】当有焦点产生时,软键盘是隐藏还是显示【二】是否减少活动主窗口大小以便腾出空间放软键盘它的设置必须是下面列表中的一个值,或一个”state…”值加一个”adjust…”值的组合。在任一组设置多个值——多个”st转载 2016-05-06 12:54:05 · 1498 阅读 · 0 评论 -
android 项目练习:自己的词典app——生词本(一)
前言:自学android差不多两个月了,由于本身对英语不感冒,而且记英语单词总是很快忘记,因此学习的过程也是蛮累的,好多类和方法都不知道啥意思,还要去查词典才知道。 后来,就想找一个背单词的app,可以把我不认识的生词添加到一个生词本,可以快速浏览生词本里的单词,也可以仅仅针对生词本里的词出一些帮助记忆的练习题?又想,既然我在学android,为什么不自己做一个那?于是就有了这个项目练习!原创 2016-05-06 16:45:54 · 24802 阅读 · 9 评论 -
如何动态修改Actionbar的item内容
Activity菜单机制 (与dialog类似)Activity有一套机制来实现对菜单的管理,方法如下:1.public boolean onCreateOptionsMenu(Menu menu)此方法用于初始化菜单,其中menu参数就是即将要显示的Menu实例。返回true则显示该menu,false则不显示;(只会在第一次初始化菜单时调用)2.public boolean onPrepareO转载 2016-05-09 12:57:30 · 1637 阅读 · 0 评论 -
Listview优化总结
Listview是andorid中最常用的控件之一,但要用好这个控件并不是那么容易。不注意优化的使用经常出现页面卡顿,OOM等问题的出现。在此本人将自己的拙见整理汇总,归纳listview的优化措施。 1.复用convertView 2.viewHolder保存控件 3.分页加载 4.UI卡顿优化 5.OOM原创 2016-07-28 17:23:37 · 770 阅读 · 0 评论 -
崩溃日志 全局crash捕获
android应用不可以避免的会发生crash,也称之为崩溃,无论你的程序写的多么完美,也无法完全避免crash的发生,可能是由于android系统底层的bug,也可能是由于不充分的机型适配或者是糟糕的网络状况。用户发生了crash,由于无法模拟,也无法知道用户当时的crash信息,所以往往也无能为力。幸运的是android提供了处理这类问题的方法转载 2016-11-08 15:18:31 · 815 阅读 · 0 评论 -
APP瘦身之webp实践
app瘦身 webp格式图片在android中的使用原创 2016-11-25 14:32:33 · 7782 阅读 · 4 评论 -
android 仿IOS弹出框
由于公司禁掉了上传功能,无法使用github等,将自己的代码分享出去。 但是自己做了一个仿IOS的弹出框感觉非常好用,想分享出来,因此就直接把相关代码贴出来,有兴趣的可以直接拷贝使用,遇到使用问题也可以留言。 做之前在网上也看到过很多类似的,但是觉得封装的都不好,因此重新封装了一下,更便于使用。 先来看下使用:new IOSActionSheetDialog.Builder(mActivi原创 2017-01-13 16:46:32 · 2124 阅读 · 0 评论 -
Https证书校验不当引起的安全问题
1. 使用Webview进行HTTPs通信Android系统内置了一些可信机构办法的证书,可用于作HTTPs证书校验。实际上,使用Webview组件进行HTTPs通信,其证书验证环节也是系统默认会去做的。若发现证书不合法,Webview将显示一个空白页面,其错误在onReceivedSslError()这个方法里进行处理。使用Webview进行HTTPs通信应当遵循如下安全规范: 1) on原创 2017-02-16 14:28:12 · 13783 阅读 · 0 评论 -
android 项目练习:自己的词典app——生词本(二)
继续接昨天的内容,没看过的可以点击 android 项目练习:自己的词典app——生词本(一) 查看。 昨天已经把查词界面的功能代码都完成了,今天就来完成UI界面的设计,由于本身不具备太多的艺术细胞,和所花时间有限,UI界面仅仅是凸显功能,并不美观。查词界面UI:xml布局文件如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmln原创 2016-05-07 15:03:21 · 12185 阅读 · 10 评论 -
Android面试准备(中高级)
AndroidActivity生命周期onStart()与onResume()有什么区别?onStart()是activity界面被显示出来的时候执行的,但不能与它交互; onResume()是当该activity与用户能进行交互时被执行,用户可以获得activity的焦点,能够与用户交互。 Activity启动流程startActivi...原创 2018-08-15 10:46:23 · 839 阅读 · 0 评论