android
文章平均质量分 76
不羁的木木
业精于勤荒于嬉 行成于思毁于随
展开
-
android sax 解析xml中文编码问题
原文http://www.eoeandroid.com/blog-498208-2757.html一个私人项目要求数据存储在xml中,跟着大众走选择sax解析。但是问题来了。sax貌似不支持中文,关键客户提供的xml编码不清楚。经过长时间的google,最后选择开源项目CodepageDetector。步奏什么挺简单的,在网上一大把,但是还是贴下代码。Encodin转载 2012-08-03 16:46:12 · 731 阅读 · 0 评论 -
Gradle入门系列(1):简介
Gradle是一种构建工具,它抛弃了基于XML的构建脚本,取而代之的是采用一种基于Groovy的内部领域特定语言。近期,Gradle获得了极大的关注,这也是我决定去研究Gradle的原因。这篇文章是Gradle教程的第一篇,我们有两个目标:1. 帮助我们学会安装Gradle。2. 介绍一些基本概念,这有助于我们进一步理解本教程的后面章节。我们开始吧,先看一下如何安装Gradle。转载 2015-05-19 14:28:52 · 5532 阅读 · 0 评论 -
Gradle入门系列(2):第一个Java项目
这篇教程的主要内容是讲解如何用Gradle编译和打包一个简单的Java项目。该Java项目只有一个需求:我们的构建脚本必须创建一个可执行的Jar文件,换句话说,我们必须能够使用命令java -jar jarfile.jar 来运行我们的程序。我们来看一下如何满足这个需求。创建一个Java项目我们可以使用Java插件(译注:关于Gradle插件的定义,请查看第一篇教程)来创建一个Ja转载 2015-05-19 14:31:24 · 6791 阅读 · 0 评论 -
处理ListView为空的情况
在移动开发中经常会使用到列表显示,对于列表显示我们经常使用的就是ListView控件。在显示列表的时候通常有两种情况:一、列表是满的;二、列表是空的。在没有数据的时候我们应该怎么处理呢?有一个简单的方法可以解决问题,我们来看一下。ListView和其他继承自AdapterView的类可以使用setEmptyView(View view)方法设置空状态下的显示。当绘制AdapterView的适配器原创 2015-07-02 11:09:52 · 5384 阅读 · 0 评论 -
怎样动态更换APP图标
遇到一个以前不知道的东西,activity-alias所以记录一下。 我们可以通过activity-alias来实现动态修改APP图标的功能。 首先,需要在AndroidManifest.xml文件中声明activity-alias,方法如下:<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schema原创 2017-03-15 16:42:36 · 2254 阅读 · 0 评论 -
Retrofit2学习笔记-1
什么是Retrofit2 Retrofit是一个给Android和Java用的类型安全的HTTP客户端,它将网络请求封装成接口,并采用注解的形式声明请求,由Retrofit自动生成接口实现对象给开发者调用。 Retofit2的入门 1. 引用Retrofit2 Gradle引用 compile 'com.squareup.retrofit2:retrofit:2.1.0' Maven引用原创 2017-03-16 12:00:25 · 363 阅读 · 0 评论 -
为什么requestWindowFeature()方法要在setContentView()方法之前调用?
日常开发中偶尔遇到需要修改标题栏样式的情况,这个时候就需要用到requestWindowFeature(int featureId)来设置窗口样式。 featureId有如下几种值: 1. DEFAULT_FEATURES:系统默认状态,一般不需要指定 2. FEATURE_CONTEXT_MENU:启用ContextMenu,默认该项已启用,一般无需指定原创 2017-05-04 14:47:52 · 1305 阅读 · 0 评论 -
Android发布AAR包
最近有需求要发布一套SDK,这套SDK有几个要求:带有Activity和Fragment;有网络请求模块;有依赖jar包; 依照上面的要求我最先想到的就是AAR包了,因为以下几个原因: 1. aar包可以包含资源文件和布局文件,这样就可以在SDK中包含Activity了; 2. aar包会包含libs目录下的jar包;1、怎样打包成AAR?打包aar其实很简单,只需要我们创建一个L原创 2017-05-26 10:41:23 · 2406 阅读 · 0 评论 -
Android多渠道编译-依赖的渠道控制
最近在开发一款android的SDK,其中有一个需求很有意思,需要在不同版本的SDK上引用不同Library依赖。之前还真没有遇到过,查阅了很多资料搞定了,在这里记录下来,分享给大家。~~原创 2017-07-05 09:58:06 · 3771 阅读 · 0 评论 -
RelativeLayout 在SDK 16(Android4.0)上 android:gravity="left" 属性失效解决
今天遇到一个很奇怪的问题,解决了很久,分享出来,希望能帮助大家少走弯路。O(∩_∩)O哈哈~ 事情是这样的,我需要实现一个类似这样的功能:两个文字在一行,并且黄色的文字要在紫色的右边,而且在文字过长需要省略的时候,优先省略紫色文字。 类似这样:我是这样实现的,代码很简单如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:an原创 2017-07-06 15:12:54 · 601 阅读 · 0 评论 -
Toast显示位置的小技巧
开发中经常使用Toast组件,一般我们使用Toast组件原创 2015-06-19 10:31:11 · 782 阅读 · 0 评论 -
android 倒计时实现
今天需要做一个发送验证码后的倒计时重发验证码的控件,查阅了一下资料发现android系统自带了一个很好用的工具类,记录一下哈~~~~ /** * 倒计时内部类 * * @author qiaomu * */ class TimeCount extends CountDownTimer { public TimeCount(long millisInFuture,转载 2015-05-17 21:39:02 · 703 阅读 · 0 评论 -
ActionBarSherlock 应用教程三
ActionBar Tab主要用于Fragment之间的切换,其必须要设置ActionBar.TabListener,详细代码如下ActionBarActivity.java:import android.app.ActionBar;import android.app.Activity;import android.app.FragmentTransaction;import androi转载 2013-12-10 15:59:27 · 1278 阅读 · 0 评论 -
ActionBarSherlock 应用教程一
如果你想在3.0+系统上使用系统的ActionBar而在3.0以前的系统上使用自定义的ActionBar,那么ActionBarSherlock就可以帮助你了.ActionBarSherlock 是Android compatibility library 的一个扩展, 不知道什么原因 Android 兼容开发包没有包含ActionBar. 所以就有了ActionBarSherlock . 其转载 2013-12-10 15:13:08 · 1399 阅读 · 0 评论 -
ActionBarSherlock 应用教程二
Action Bar 和 ViewPager 出现以后,使得 Android 程序 cool 了很多。简单的说,ViewPager 使得实现手指横向划过屏幕来切换场景变得简单,这种切换方式在触摸屏上非常符合直觉,远胜 button 跟 tab 的体验。Action Bar 则提供了更为直接快捷的常用功能访问途径,在没有实体 menu 按键或者屏幕尺寸比较大的时候可以有更好的使用体验。在没有 V转载 2013-12-10 15:26:38 · 1326 阅读 · 0 评论 -
Android Volley完全解析(一),初识Volley的基本用法
1. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConnection和HttpCl转载 2014-12-09 10:38:33 · 587 阅读 · 0 评论 -
android优化之布局优化-Merge标签的使用
单独将标签做个介绍,是因为它在优化UI结构时起到很重要的作用。目的是通过删减多余或者额外的层级,从而优化整个Android Layout的结构。核心功能就是减少冗余的层次从而达到优化UI的目的!将通过一个例子来了解这个标签实际所产生的作用,这样可以更直观的了解的用法。建立一个简单的Layout,其中包含两个Views元素:ImageView和TextView 默认状态下我们将这两个元素放在转载 2015-04-15 18:20:28 · 677 阅读 · 0 评论 -
Gradle入门系列(4):创建二进制发布版本
在创建了一个实用的应用程序之后,我们可能想将其与他人分享。其中一种方式就是创建一个可以从网站上下载的二进制文件。这篇教程描述了如何创建一个二进制发布版本,满足以下需求:二进制发布一定不能使用所谓的“fat jar”方式。换句话说,我们应用程序中的所有依赖一定不能被打包到该程序相同的jar包中。二进制发布必须包含针对*nix和Windows操作系统的启动副本。二进制发布的根目录必须包含许转载 2015-05-20 15:31:16 · 1409 阅读 · 0 评论 -
Gradle入门系列(3):依赖管理
在现实生活中,要创造一个没有任何外部依赖的应用程序并非不可能,但也是极具挑战的。这也是为什么依赖管理对于每个软件项目都是至关重要的一部分。这篇教程主要讲述如何使用Gradle管理我们项目的依赖,我们会学习配置应用仓库以及所需的依赖,我们也会理论联系实际,实现一个简单的演示程序。让我们开始吧。仓库管理简介本质上说,仓库是一种存放依赖的容器,每一个项目都具备一个或多个仓库。Grad转载 2015-05-20 15:30:41 · 10434 阅读 · 1 评论 -
Gradle入门系列(5):创建多项目构建
尽管我们可以仅使用单个组件来创建可工作的应用程序,但有时候更广泛的做法是将应用程序划分为多个更小的模块。由于这是一个非常普通的案例,因此每个成熟的构建工具都必须支持这项功能,Gradle也不例外。倘若Gradle项目拥有多于一个组件,我们就将其称之为多项目构建(multi-project build)。这篇教程描述了如何使用Gradle创建一个多项目构建。我们先来看一看Gradle构建转载 2015-05-20 15:31:13 · 4958 阅读 · 0 评论 -
正确使用Android性能分析工具——TraceView
前面唠叨最近公司app中有些列表在滑动的时候会有卡顿现象,我就开始着手解决这些问题,解决问题之前首先要分析列表滑动的性能瓶颈在什么地方。因为之前不会正确使用TraceView这个工具,主要是看不懂TraceView界面下方数据指标的值代表什么意思…以前我用StopWatch类来分析性能,现在觉得弱爆了…不过有些地方StopWatch工具类还是很简单好用的~网上可以找了很多博客来介绍这个工具转载 2015-05-20 15:33:00 · 501 阅读 · 0 评论 -
Android上实现WebView控件的完整截图
最近总能看到好多APP都支持文章和网页的长截图,出于好奇研究了一下,分享给大家。 网上有好多的例子,其中好多都是已经过时的就不在复述了,我发现有一种还是比较通用的方法。//android 5.0 之后需要开启浏览器的整体缓存才能截取整个Webif (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { WebView.enabl原创 2017-12-28 17:15:34 · 2224 阅读 · 3 评论