个人
文章平均质量分 78
yanjunhui2011
生性开朗,待人友善。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Manifest merger failed with multiple errors 的解决之道
总结原因如下:1、AndroidManifest.xml 中存在相同命名的 Activity。解决方法:删除其中一个。2、 引入的三方包存在相同的label icon 等名字解决方法:注册文件用tools 3、依赖库的 sdk版本冲突解决方法一(推荐):修改targetSdkVersion 为一致或者不冲突 解决方法二原创 2017-01-03 15:24:57 · 998 阅读 · 0 评论 -
Android-BroadCastReceiverUtil(广播工具类)
Android本身提供的广播机制适用性非常广,但是源生的广播注册、发送、注销会稍显繁琐。为了简化这个过程,本人做了一点点优化,将所有常用的方法整合到了一个工具类中。import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import andr原创 2016-08-03 23:10:55 · 1304 阅读 · 0 评论 -
自定义ActionBar,在BaseActivity如何降低耦合
在工作中,ActionBar只用非常频繁,虽然系统的ActionBar、ToolBar给我们提供了很棒的UI体验。但是,我们平常的项目中并不需要这么酷炫的ActionBar。通常来说,一个ActionBar包括 左边图片, 左边文字, 标题 ,右边文字,右边图标。 以上5点,基本满足了80%的ActionBar需求。 一般我们将实现的过程原创 2016-08-18 10:06:05 · 398 阅读 · 0 评论 -
Android官方 Sample-Demo地址
Android官方 Sample-Demo地址:(需要翻墙)https://developer.android.com/samples/Interpolator/index.htmlGitHub上地址:(不需要翻墙)https://github.com/googlesamples原创 2016-08-18 11:23:21 · 1518 阅读 · 0 评论 -
Android碎片化问题 java.lang.NoClassDefFoundError: android/os/PersistableBundle 之解决方案
今天开发的时候,测试提交给我一个问题,我怎么测都测不出来,可在测试那一点就奔溃。无奈,把测试的手机那过来,果然奔溃。打印日志一看,得到日志如下: W/System.err: java.lang.NoClassDefFoundError: android/os/PersistableBundle W/System.err: at java.lang.Class.getDeclare原创 2016-08-19 16:00:27 · 3631 阅读 · 0 评论 -
解决:Error:Execution failed for task app:predexdebug
今天新建了一个项目,编译的时候报如下错误:Error:Execution failed for task 'app:preDexDebug'.> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program原创 2016-08-08 23:39:02 · 5021 阅读 · 0 评论 -
Android之ViewPager.getChildCount()无限自增问题解析
在最近的一次工作中,要做一个广告展示栏。果断使用ViewPager来实现,但是,在实现玩效果之后,打印日志发现一个巨大的问题。ViewPager在多次划动后 ViewPager.getChildCount(),竟然会无限自增。好在老夫花了2个小时研究了一下ViewGroup的源码,总算把问题解决了。接下来进入正题。首先:ViewPager是ViewGroup的子类,ge原创 2016-09-12 16:04:49 · 1971 阅读 · 0 评论 -
ButterKnife java.lang.ClassCastException: android.view.View cannot be cast to android.app.Activity
今天使用ButterKnife报以下错误: Caused by: java.lang.ClassCastException: android.view.View cannot be cast to android.app.Activity原创 2016-09-18 10:54:51 · 2988 阅读 · 2 评论 -
Android底部弹框的两种实现(总结)
在Android应用上,为了美观,和与IOS的统一性,众多的APP都模仿苹果使用底部弹出Dialog。本人结合项目中使用过的,好用的实现方式分为两种:1、自定义Dialog;2、属性为 parent="android:Theme.Dialog" 的Activity;两种方法的适用场景都很广泛,而且很适合直接复用(这也是为什么不用PopupWindow的原因)。原创 2016-08-26 16:16:23 · 2554 阅读 · 0 评论 -
Android完美检测键盘弹出/收起
代码很简单,可以直接复制粘贴。原理请参照:http://blog.youkuaiyun.com/xiaole0313/article/details/51537809 private void setListenerToRootView() { final View rootView = getWindow().getDecorView().findViewById(android.原创 2016-09-08 15:51:16 · 2783 阅读 · 0 评论 -
碰到the authenticity of host github.com can't be established问题怎么解决
验证github账号时,发生以下情况:解决方法:先输入 no再输入 ssh-keyscan github.com >> ~/.ssh/known_hosts 亲测有效。以下是我成功后的截图。原创 2016-11-11 13:43:01 · 5297 阅读 · 4 评论 -
Git过滤问题件(gitignore)下载地址
Git官方非常人性化的提供了各种过滤文件,下载地址:https://github.com/github/gitignore/原创 2016-12-05 14:30:20 · 907 阅读 · 0 评论 -
解决: Gradle DSL method not found: 'apt()'
今天构建项目的时候发现引用了ButterKnife的 apt 插件后,我的项目突然给我报了这么一个错误。如下:Error:(27, 0) Gradle DSL method not found: 'apt()'Possible causes:The project 'TransactionTest' may be using a version of Gradle that doe原创 2016-07-28 17:06:49 · 16855 阅读 · 0 评论 -
Android自定义可拖动进度条
如题,看效果图:该自定义组件的优势:1、使用简单;2、可随意改变圆点、直线的颜色和大小;当然,也许你会吐槽,系统不是提供了 seekBar 吗,怎么不用 seekBar。我想说,我写这个也是一时来了兴致,因为最近在研究自定义组件,根据自己项目里的需求,自己写出来的。虽然DEMO不是很高大上,但内心还是很欣喜的。所以,还希望嘴上留情。还是那句话,你可以原创 2017-02-20 17:32:28 · 6419 阅读 · 7 评论 -
Android沉浸式状态栏 + actionBar透明渐变 + scrollView顶部伸缩
闲话不多说,直接上图。给大家讲讲我的编程思想吧。第一部分:沉浸式状态栏(API-Level 19, Android4.4 KitKat 之后加入的东西),而且在Api-Level 21版本中新增了一个属性(下面会说到)。所以,style文件应该声明三份。valuesname="TranslucentTheme" parent="@原创 2017-02-15 11:39:15 · 6995 阅读 · 2 评论 -
Android自定义标题栏ActionBar
在日常的工作中,ActionBar使用的频率非常的高,而系统自带的ActionBar捆绑的东西有太多,而上面多数的效果我们都用不到。如果不用系统的ActionBar,我们该怎样把自定义ActionBar的工作做到最简化呢。首先我们做一个基本的需求分析。如上图所示,我们的ActionBar通常包括了:左菜单, 标题, 右菜单 。如果要再细分一下, 菜单 = (图标 + 文原创 2017-03-21 20:17:53 · 8025 阅读 · 3 评论 -
Android-TextView 默认字体大小
今天写代码的时候,突然来了兴致,TextView如果不指定textSize,那它的默认字体大小会是多少。答案是15,我们可以清晰的看到源码中的textSize为15,单位是sp。原创 2017-05-31 10:32:09 · 17023 阅读 · 4 评论 -
Android简单实现滑动删除Item
需求:如题,要做出类似QQ左滑删除的效果。分析:Android中什么组件自带了水平滑动? 我首当其冲就想到HorizontalScrollView。既然是简单实现,那我们何方不继承一下HorizontalScrollView呢?接下来我们将HorizontalScrollView分成ItemView + 抽屉部分。我们只需要监听用户的滑动事件,当用户滑动超过指定距离时,就移动Horiz原创 2017-09-07 17:20:33 · 5215 阅读 · 2 评论 -
Android实现ScrollView顶部布局上滑缩小,下滑恢复
废话不多说,先上效果图:代码实现也比较简易,我写了一个类继承了ScrollView,并重写onTouchEvent以支持头部布局的变化。当然,这么做需要手动关联一下 头布局、图片。上核心代码:package com.jh.customscroll;import android.content.Context;import android.uti原创 2017-10-18 16:38:41 · 7501 阅读 · 1 评论 -
Android从Context获取路径
源码:LogUtils.d(TAG, "codePath == " + context.getPackageCodePath());LogUtils.d(TAG, "resPath == " + context.getPackageResourcePath());LogUtils.d(TAG, "cacheDir == " + context.getCacheDir().getPath());...原创 2018-03-27 09:30:49 · 864 阅读 · 0 评论 -
PullToRefreshScrollView 导致的 java.lang.IllegalArgumentException
日志信息java.lang.RuntimeException:Unableto start activity ComponentInfo {com.renfenqi.shop/com.renfenqi.shop.ui.main.MainActivity}: java.lang.IllegalArgumentException: Wrong state class, expecting View S...原创 2018-04-12 16:19:13 · 1110 阅读 · 0 评论 -
Android支持点击的TouchView(可拖动视图)
需求:1、一个可以拖动的view;2、该view可以通过setOnClickListener设置点击监听。解决思路:可拖动视图就必须重写onTouch事件,但是重写onTouch事件,点击事件肯定会被过滤。所以,需要我们自己再处理一下,把符合条件的onTouch事件转化成点击事件。需求和解决思路都出来了,那代码就很好实现了,我们先来看一下效果图。上最主要的代码:(一会还有DEMO)package ...原创 2018-04-21 17:54:49 · 1752 阅读 · 0 评论 -
GitHub官网上的Android过滤文件
# Built application files*.apk*.ap_# Files for the ART/Dalvik VM*.dex# Java class files*.class# Generated filesbin/gen/out/# Gradle files.gradle/build/# Local configuration file (sd...原创 2018-06-23 16:17:05 · 582 阅读 · 0 评论 -
Andorid开发常用牛逼组件下载地址
1、各种炫酷ListView、各种形状的图片、进度条、开关、日历、国家/城市选择、FlipView、颜色选择器、GraphView(曲线图绘制)、其他、图片加载、网络请求、orm工具包、多媒体、DL框架、日志工具、测试工具等等https://github.com/Trinea/android-open-project原创 2016-01-28 09:31:49 · 691 阅读 · 0 评论 -
一张图让你明白IT男都是闷骚型的
QQ密保卡有木有! 写明了不许偷看有木有!! 阅读量相差20倍有木有!!!不信的可以自己去查看:QQ密保博客地址:http://blog.youkuaiyun.com/yanjunhui2011/article/details/7858661另一篇文章地址:http://blog.youkuaiyun.com/yanjunhui2011/article/原创 2012-09-29 16:17:19 · 900 阅读 · 0 评论 -
Android广播大全
Intent.ACTION_AIRPLANE_MODE_CHANGED;//关闭或打开飞行模式时的广播 Intent.ACTION_BATTERY_CHANGED;//充电状态,或者电池的电量发生变化//电池的充电状态、电荷级别改变,不能通过组建声明接收这个广播,只有通过Context.registerReceiver()注册 Intent.原创 2013-01-30 15:59:32 · 645 阅读 · 0 评论 -
Android设置多个定时器时只有最后一个定时器有效的问题
AlarmManager的常用方法有三个:(1)set(int type,long startTime,PendingIntent pi); 该方法用于设置一次性闹钟,第一个参数表示闹钟类型,第二个参数表示闹钟执行时间,第三个参数表示闹钟响应动作。(2)setRepeating(int type,long startTime,long intervalTime,Pendi转载 2013-01-31 10:17:23 · 713 阅读 · 0 评论 -
location of the android sdk has not been setup in the preferences如何解决
没有截图不要紧。只要您仔细对照我的文字描述,一定可以解决问题。第一种情况:adb.exe丢失请按照如下地址的叙述解决:地址:http://hi.baidu.com/azhangdeng/item/bcdbcd9ed95edddfb72531e3补充:以上博客的更新时间是 2012-03-06 而我发表此博客的时间为 2013-02-16,中间间隔了11个月,原创 2013-02-17 00:30:41 · 4232 阅读 · 0 评论 -
去除java代码中的UTF-8 BOM标识
我所碰到的情况是:从txt文件中读取一段字符串,并需要转换成JSONObject,但是由于 txt 的编码是UTF-8 而造成了 BOM 头。所以,用BufferedReader读取InputStream之前,需要对流进行以下处理。/*** 读取流中前面的字符,看是否有bom,如果有bom,将bom头先读掉丢弃* * @param in* @return* @t原创 2013-02-20 10:36:50 · 4134 阅读 · 0 评论 -
android BaseActivity
import java.io.File;import java.io.IOException;import com.suokete.sale.R;import android.app.Activity;import android.app.AlertDialog;import android.app.Notification;import android.a原创 2013-03-18 00:07:30 · 1406 阅读 · 0 评论 -
百度地图不能从定位的BDLocation里获取地址怎么办?
官方文档、DEMO请转移:http://api.map.baidu.com/lbsapi/cloud/geosdk-android-developv3.1.htm首先第一点,确认你对LocationClient设置的参数是否包含 option.setPoiExtraInfo(true); 是否需要POI的电话和地址等详细信息 mLocClient.requestLocation(原创 2013-08-14 11:01:58 · 4014 阅读 · 0 评论 -
Andorid屏幕分辨率划分规则 dpi
根据平时工作的需要,作出以下划分:values-ldpi:values-mdpi:values-hdpi:480 * 854 480 * 800values-xhdpi:1440 * 25602048 * 15361200 * 1920768 * 12802560 * 1600values-xxhd原创 2015-08-11 12:26:03 · 690 阅读 · 0 评论 -
三星手机调用系统相机 activity被销毁
原作者:Kevin 在项目中需要启用系统照相机来拍照。本来很容易的一个问题。但在适配中出现了问题。简单说一下问题: 有些手机拍照成功,有些手机拍完照后确定返回后activity数据丢失,被销毁了。问题查找: 经过代码查找发现,当这些出问题的手机被调用系统手机拍照时,当前activity被销毁了之后又被重新创建了。即Acitivity转载 2015-12-22 15:18:57 · 1833 阅读 · 0 评论 -
我的QQ密保卡,不许偷看哦
原创 2012-08-13 09:18:35 · 1740 阅读 · 0 评论 -
Android 三星手机拍照无法收到回调问题
三星手机自己为是的做了一个很酷的功能 - 拍照后自动旋转的功能,从而导致了需要回调的Activity被重新onCreate,使开发者在onActivityResult中得到 resultCode == RESULT_OK, 而 url == null 的现象。此DEMO就是为了解决这个问题而写的。原创 2016-02-24 14:58:04 · 2073 阅读 · 1 评论 -
Android 开发中,那些让你相见恨晚的方法、类或接口
getParent().requestDisallowInterceptTouchEvent(true);剥夺父view 对touch 事件的处理权,谁用谁知道。ArgbEvaluator.evaluate(float fraction, Object startValue, Object endValue); 用于根据一个起始颜色值和一个结束颜色值以及一个偏移量生成一个新的颜色,分分钟实转载 2016-04-13 14:15:50 · 315 阅读 · 0 评论 -
Android Studio导入 setting.jar 后报错 解决方案
今天早上,由于提交代码需要格式化,向同事要来了他AndroidStudio配置一份。导入到我的项目中,结果我的项目报错了...重启、Clean均无效...起初我怀疑是AndroidStuido版本问题,其实不然。 查看了AndroidStuido最底下状态栏一行,提示“JDK路径错误”。于是果断查看项目结构。查看方法: File >> Project Sturcture。原创 2016-04-11 11:10:19 · 4102 阅读 · 0 评论 -
Java反射的基础使用
啥也不说,直接上代码。//性别枚举public enum Sex{ Man, Woman;}//抽象基类public abstract class Person{ //定义人的基本属性,姓名 + 性别 public String name; public Sex sex;}//定义Lilypublic class Li原创 2016-04-18 18:59:25 · 356 阅读 · 0 评论 -
Charles使用教程指南
0x01 前言:Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的抓包工具。0x02 下载与安装首先是工具下载和安装 首先需要下载java的运行环境支持(一般用burp的人肯定也都有装java环境)。装好java环境后,可以直接去百度搜索并下载ch转载 2016-04-21 15:18:24 · 463 阅读 · 0 评论 -
NDK_HelloWorld开发指南
开发android多年,近日处于兴趣,研究了一下NDK的东西,以下是一个简单的DEMO,希望对初学者能有一些帮助。Java代码:package com.ndk.helloworld;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public clas原创 2016-05-20 11:23:03 · 308 阅读 · 0 评论
分享