
Android学习
shikai_yang
专注android开发3年
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Android适配器Adapter的使用
android适配器Adapter 一.什么是适配器,适配器有什么用? 适配器是AdapterView视图(如ListView - 列表视图控件、Gallery - 缩略图浏览器控件、GridView - 网格控件、Spinner - 下拉列表控件、AutoCompleteTextView - 自动提示文本框、ExpandableListView - 支持展开/收缩功能的列表控件等)与数据原创 2014-07-27 12:48:14 · 524 阅读 · 0 评论 -
加快Android编译速度
对于Android开发者而言,随着工程不断的壮大,Android项目的编译时间也逐渐变长,即便是有时候添加一行代码也需要等待好久才能看见期待的效果。之前加快Android编译的工具相对较少,其中最具有代表性的开源项目当属FaceBook的Buck和 mmin18的LayoutCast,除此之外还有JRebel 和 Jimulabs。不过前两天google宣布推出Instant Run加快A转载 2016-04-26 18:41:02 · 398 阅读 · 1 评论 -
APK瘦身实践
因为推广的需要,公司需要把APK的大小再“减小”一下,4M以内! 当达到4M以内之后,公司建议说,能否再压压?2M如何? 瘦身前 因为平时就考虑到大小的限制,所以很多工作已经做过了,如下列举现在的状态: 7.3M(Debug版本)和6.5M(Release版本)开启minifyEnabled开启shrinkResources已经去除不相关的大型库图片和代码已经经历过粗略的一转载 2016-04-26 18:40:12 · 334 阅读 · 0 评论 -
Android绘制流程
一、前言 1.1、C++界面库 MFC、WTL、DuiLib、QT、Skia、OpenGL。 Android里面的画图分为2D和3D两种: 2D是由Skia 来实现的,3D部分是由OpenGL实现的。 1.2、Android基本概念 窗口 对用户来说, 窗口就是手机屏幕, 包括下面的那些home、back按键、状态栏等。对于Activit转载 2016-04-26 18:24:54 · 537 阅读 · 0 评论 -
java HashMap插入重复Key值问题
今天在用到了HashMap来遍历所有非重复的Key时遇到了一个问题,在写入数据库的时候报错--主键不能重复插入。查看了好久java文档才得以解决。 自定义一个类型 class MyType { private String arga; private String argb; public MyType(String arga转载 2016-03-14 12:06:07 · 510 阅读 · 0 评论 -
在Android开发中使用MVP模式
一、MVP介绍 随着UI创建技术的功能日益增强,UI层也履行着越来越多的职责。为了更好地细分视图(View)与模型(Model)的功能,让View专注于处理数 据的可视化以及与用户的交互,同时让Model只关系数据的处理,基于MVC概念的MVP(Model-View-Presenter)模式应运而生。 在MVP模式里通常包含4个要素: (1)View:负责绘制原创 2016-03-10 12:19:49 · 657 阅读 · 0 评论 -
Android Data Binding 技术
Data Binding Data Binding即数据绑定,Data Binding 库实现在布局文件中实现数据绑定申明,使数据的变化引起视图的自动更新,减少了逻辑代码,在Android中可以很方便的实现MVVM的开发模式。 MVVM 了解MVVM之前,我们先简单说一下MVC、MVP模式。 MVC是Model原创 2016-03-10 12:00:09 · 301 阅读 · 0 评论 -
Android 热修复
Android 热修复总结 前段时间热修复这个词非常火,当时只是大体看了一下,今天抽空好好看了一下具体原理. 什么是热修复? 简单的说就是用户不用重新下载一个新的apk安装,而是直接下载一个补丁包,通过补丁来替换一些出现bug的类, 当然下载补丁的过程用户一般是感觉不到的,表面上看是直接修复了bug. 原理 类似与插件开发,关于插件开发原理,看这篇Android插件原理剖原创 2016-03-10 11:52:28 · 287 阅读 · 0 评论 -
安卓中的Model-View-Presenter模式
什么是MVP .View是指显示数据并且和用户交互的层。在安卓中,它们可以是一个Activity,一个Fragment,一个android.view.View或者是一个Dialog。 .Model 是数据源层。比如数据库接口或者远程服务器的api。 .Presenter是从Model中获取数据并提供给View的层,Presenter还负责处理后台任务。 MVP是一个将后台任原创 2016-03-10 11:50:04 · 1873 阅读 · 0 评论 -
Android Context解析
Context类型 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析,Android程序不像Java程序一样,随便创建一个类,写个main()方法就能跑了,而是要有一个完整的Android工程环境,在这个环境下,我们有像Activity、Service、Broad转载 2016-03-01 17:16:44 · 321 阅读 · 0 评论 -
自定义超出布局的LinearLayout
package com.example.demo; import android.content.Context; import android.util.AttributeSet; import android.view.View; import android.widget.LinearLayout; public class MyLinearLayout exten原创 2015-04-17 12:37:51 · 1232 阅读 · 0 评论 -
listview长按弹出窗popupwindow
package com.example.popupwindowtest; import java.util.ArrayList; import java.util.List; import android.R.integer; import android.R.string; import android.app.Activity; import android.graph原创 2015-04-17 10:59:40 · 1036 阅读 · 0 评论 -
Android---WebView设定支持缩放
对WebView和WebSettings做一下设定 webview.setVerticalScrollbarOverlay(true); //指定的垂直滚动条有叠加样式 WebSettings settings = webview.getSettings(); settings.setUseWideViewPort(true);//设定支持viewport原创 2015-04-15 16:18:48 · 885 阅读 · 0 评论 -
Android 自定义View可拖动移动位置及边缘拉伸放大缩小 - Livingstone
一.首先说一下定义这样一个View有什么用?在一些app中,需要设置头像,而用户选择的图片可能是使用摄像头拍摄,也可能是选择的相册里面的图片,总之,这样的图片大小不一,就比如在使用某个聊天软件的时候,设置头像,需要对图片进行截取. 要实现这样一个功能,首先,需要分析用户的操作,即用户所点击的View的位置,如下图,我把View分为9个区域, 当ACTION_DOWN时如果坐标为1.2.原创 2015-04-15 16:16:08 · 2490 阅读 · 0 评论 -
Android保持屏幕常亮的三种方法
1.申请亮屏锁 pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); //得到电源管理器对象 wl = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.FULL_WAKE_LOCK, "TEST"); w原创 2016-04-20 18:11:12 · 603 阅读 · 0 评论