自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (37)
  • 收藏
  • 关注

原创 scrcpy投屏和adb指令冲突

scrcpy投屏和adb指令冲突

2022-08-05 16:35:39 2272

原创 Kotlin 集合过滤函数

val list = listOf(4,5,1, 2, 3,2,5,3 ,4,5,6,7,8)drop(n):去除前n个元素drop(3):listOf( 2, 3,2,5,3 ,4,5,6,7,8)dropLast(n):去除最后n个元素dropLast(3):listOf(4,5,1, 2, 3,2,5,3 ,4,5)dropWhile{}:去除从前面开始满足条件的元素直到第一个不满足条件的元素为止(如果第一个元素即不满足条件,则全部返回)dropWhile{it&gt..

2020-09-15 10:24:06 1498

原创 使用JsonDeserializer自适应平台同字段不同类型数据

通过使用Gson可以方便将json串自动映射为bean对象,方便快捷,但是平台数据可能会出现同字段不同类型时,bean该如何自适应,这里我的解决方法是使用JsonDeserializer手动解析。直接上实例:修改前的bean:private String price;修改前的json中price可能是string,也可能是arraylist。修改后:删除private St...

2019-12-27 09:34:58 4138

原创 activity生命周期的一个坑

今天项目中碰到一个和activity生命周期有关的坑,特此记录。背景:activity launchMode="singlenInstance",在多次启动关闭后,在最后一次关闭(调用finish),生命只走到了onPause,此时再次launch后,这两次的生命周期变成:onCreate--->onResume----->onPause------->onCreate---...

2019-08-23 15:04:27 210

转载 android anr traces日志分析方法

一:什么是ANRANR:Application Not Responding,即应用无响应二:ANR的类型ANR一般有三种类型:1:KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应2:BroadcastTimeout(10 seconds)BroadcastReceiver在特定时间内无法处理完成3:Servi...

2018-08-30 18:02:22 2022

原创 解决activity页面切换背景界面会闪一下

最近项目中发现的问题:现象:home界面是一个listview,item点击后启动相应的activity,就是如此简单,但是,如果同一时间内连续点击item,会发生home界面闪退,回到背景页面,然后相应的activity被启动。原因:application主题中设置了android:windowIsTranslucent =true,这回导致A跳转到B时,B相当于一个半透明的dialog...

2018-08-10 09:53:20 6519

原创 Fragment setArguments时的 Fragment already active错误

Fragment setArguments时的java.lang.IllegalStateException: Fragment already active异常主要是使用setArguments()传递参数导致的:在 Fragment 没有被添加到 FragmentManager 之前,我们可以通过 Fragment.setArguments() 来设置参数,并在 Fragment 中,使用 g...

2018-04-27 11:36:41 1525

原创 巧妙的弥补ExpandableListview没有OnChildLongClickListener的遗憾

总所周知,ExpandableListview没有子项的长按监听事件,也就是没有OnChildLongClickListener。目前只有OnItemLongClickListener,这个监听回调方法中,只有一个position,这是因为系统会把当前展开的项,包括parent和child按顺序展示,也可以说当做一个普通的listview,那么如何知道当前长按子项的具体位置呢?可以用下面这个方

2017-11-24 14:21:43 254

原创 android中的事件拦截机制

现有ViewGroupA,ViewGroupB,View,布局中的嵌套关系是ViewGroupA为最外层的父控件,ViewGroupB是其下面的子控件,View则为ViewGroupB下面的子控件。对于ViewGroup来说,可以重写一下三个方法:@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) { retu

2017-03-30 10:05:41 289

原创 Activity启动模式详解

Activity的启动模式共有四种:standard,singleTop,singleTask,singleInstance!1,standard:默认的启动模式,每当启动新的活动,它都会在返回栈中入栈,并处于栈顶,看代码:public class FirstActivity extends AppCompatActivity { @Override prot

2017-03-07 14:38:53 251

原创 打造通用的Adapter为RecyclerView服务

1,创建一个点击事件的接口public interface OnItemClickListener { void onItemClick(int position);}2,创建一个长按事件的接口:public interface OnItemLongClickListener { boolean onItemLongClick(int position

2017-03-02 14:37:58 428

转载 ButterKnife新版 8.4.0的配置问题

ButterKnife是一个专注于Android系统的View注入框架,能够简化代码,再也不用写大量的findViewById以及setOnClickListener代码,这东东真心不错哦,很方便,啧啧啧。原本以为,用AndroidStudio使用ButterKnife只要在项目中的Module:app的gradle文件中加入compile'com.jakewharton:butterkn

2017-01-19 18:02:34 6821

转载 重写ViewPager实现Scrollview嵌套ViewPager高度自适应

public class MyViewPager extends ViewPager {      public MyViewPager(Context context) {          super(context);      }        /**      * Constructor      *      * @param context the c

2017-01-12 15:24:29 5781

原创 不用线程实现倒计时

需求:有多个组件可以开启倒计时,正常情况下默认倒计时时间终了后更新UI,另,用户可以取消指定倒计时。这里使用CountDownTimer进行倒计时,其中回调函数onFinish是在倒计时终了时回调,onTick是在倒计时开始时回调,用户可以使用CountDownTimer对象的cancel方法取消倒计时。这样做的好处:不需要使用繁琐的线程去控制倒计时,更方便的进行UI更新。上代码:

2017-01-09 10:37:20 444

原创 CollapsingToolbarLayout之layout_scrollFlags

当我们在AppBar中使用可折叠的ToolBar---CollapsingToolbarLayout时,其中有一个属性app:layout_scrollFlags有三个值:app:layout_scrollFlags="scroll|exitUntilCollapsed"  recyclerview上拉时不能完全折叠app:layout_scrollFlags="scr

2016-08-31 16:58:07 3608 1

原创 简单使用Glide加载网络图片

Glide是谷歌为我们介绍的一个第三方的图片加载库,图片加载已知url的网络图片只需一句话首先是下载Glide库,choose Library Dependency中输入glide输入后,回车,选择等导入成功后就可以使用了简单使用就一句话:Glide.with(view.getContext()).load

2016-08-26 11:19:41 8757

原创 AnimationSet.setRepeatCount无效问题

AnimationSet scaleanimationSet = new AnimationSet(true);ScaleAnimation scaleAnimation = new ScaleAnimation(1f,2f,1f,2f,Animation.RELATIVE_TO_SELF,0.5f, Animation.RELATIVE_TO_SELF,0.5f);scale

2016-08-18 10:25:30 3963

转载 CSS如何画出一个三角形

这是一个普通的 div ,一个边长为 100px 的正方形,border 宽度为 10px, 没有任何技术含量,地球人都会画。我们知道 border 是分为 top、right、bottom、left 的,那么这个矩形的四个边是怎样划分的呢?显然,要想公平地分割四条边框,只有这样:所以我们如果把上、左、右三条边隐藏掉(颜色设为 transparent),会怎样呢?

2016-07-28 17:47:14 1165

转载 Android高效加载大图、多图解决方案,有效避免程序OOM

高效加载大图片我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可

2016-06-08 16:42:09 319

原创 Android-PullToRefresh-master使用心得

关于上拉下拉加载,网络上使用很多的是国外大神发布的Android-PullToRefresh,确实方便很多,现在来谈谈使用心得:1:源码下载:https://github.com/chrisbanes/Android-PullToRefresh2:环境配置:将压缩文件解压后, 把\Android-PullToRefresh-master 下的library拷贝到和主工程

2016-04-06 18:26:32 1671

原创 EditText中android:digits失效问题

需求:密码输入要求指定字符串,画面中可以切换密码显示与隐藏原先代码如下:xml:                    android:id="@+id/set_password_txt"                    android:layout_width="0dp"           android:layout_height="wrap_conte

2016-03-22 18:37:45 6485

原创 自定义dialog实现窗口四个直角变为弧形

首先,在自定义dialog的布局文件中添加:    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:background="@drawable/confirm_dialog_bg"    android:orientation="vertical" >

2016-02-23 13:58:31 1646

原创 详细理解android中9png的制作

1,打开\sdk\tools中draw9patch.bat工具,把需要制作的png拖入其中:2,描绘黑线:下线和右线区域是内容显示区域,上线和左线是拉伸区域:3,下图灰色是右线表示的内容在垂直方向显示的区域:4,下图灰色是下线表示内容显示的横向的显示区域,和3中垂直方向交叉的部分就是内容显示的区域

2016-02-18 16:05:13 361

原创 巧妙解决百度地图在合适视野范围内显示所有的点

先上代码:mBaiduMap.setOnMapLoadedCallback(new OnMapLoadedCallback() {@Overridepublic void onMapLoaded() {// 路线LatLng p1 = new LatLng(31.209933, 121.608515);LatLng p2 = new LatLng(30.905841, 12

2016-01-04 16:00:24 13463

转载 Listview中嵌套gridview只显示一行的问题

问题:当listview中嵌套gridview时,gridview只显示一行、方案:重写gridviewpublic class MyGridView extends GridView{        public MyGridView(Context context, AttributeSet attrs) {               super(context, a

2015-12-28 18:04:58 614

原创 listview不能刷新显示数据(有数据的情形下)

今天遇到一个小问题,但却调查了好久。。。。汗。。。activity中有两个fragment,在activity的布局文件中定义了一个layout被两个fragment共同使用。fragment中的listview刷新时一直不能显示数据,adapter中getCount方法可以被调用,显示数据两条,但getView方法一直不能被调用,界面也不能显示数据。调查后发现原因如下:lis

2015-12-09 18:32:08 877

转载 android Application值得注意的几个地方

1:Application是什么?          Application和Activity,Service一样,是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息。通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 A

2015-10-26 14:16:33 598

原创 android sqlite3命令查询及修改数据

使用adb命令方便快捷的查询sqlite数据库中表的值,直观的显示并修改数据!1,adb shell2,cd /data/data/3,ls 查看应用的文件夹4,进入应用的文件夹5,cd databases 进入该应用下的databases目录,ls 可以看到db名称

2015-09-25 13:52:54 1537

原创 android应用性能提升之adapter

android应用中用户滑动list,会回调adapter中的getView方法,这里不能每个item都去创建一个view,因此需要在getView开始的地方判断第二个参数view是否为空。如果为空,则需去调用inflate()方法创建新的view,如果不为空,则直接使用第二个参数view。好了,如果一个界面有两个以上的view需要切换,那么以上提升性能的方式就不正确了。这时需要在

2015-07-22 14:16:46 536

原创 selector无效

目前项目碰到一个UI问题,一个button点击的时候字体颜色由黑色变为蓝色,于是在xml文件中针对该button的android:textColor属性设置了一个selector,但是发现字体颜色在按钮按下的时候不会变成蓝色,纠结了很久发现了原因是在java中使用了setTextColor方法,setTextColor方法设定的也是xml中用到的selector,但这样会使该selector失效~

2015-07-20 11:27:12 547

原创 listview上拉加载上一页 下拉加载下一页共通处理

先什么都不说了,上效果图:第一页默认显示:上拉加载下一页:拉至一定高度:松开 加载中:下拉加载上一页:下拉至一定高度:松开 加载中:代码已经上传:http://download.csdn.net/detail/zengchao2013/

2015-06-25 14:35:37 1304

原创 获取手机联系人,并通过拼音字母快速查询

获取手机联系人,并通过拼音字母快速查询。通过工具类转换联系人首字的首字母,并排序显示。通过画布的方式在布局右侧添加快速查询的字母布局显示效果如下图:右侧点击【★】时回到顶部:滑动到【N】时N开头的联系人置顶代码:通过画布的方式在布局右侧添加快速查询的字母布局http://download.csdn.net/detail/zengc

2015-05-29 09:28:13 1833

转载 Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面

概述:每个Android应用程序都运行在一个dalvik虚拟机进程中,进程开始的时候会启动一个主线程(MainThread),主线程负责处理和ui相关的事件,因此主线程通常又叫UI线程。而由于Android采用UI单线程模型,所以只能在主线程中对UI元素进行操作。如果在非UI线程直接对UI进行了操作,则会报错:CalledFromWrongThreadException:only the

2014-11-12 18:15:51 413

转载 在命令行中通过adb shell am broadcast发送广播通知

通过命令行执行adb shell am broadcast发送广播通知。adb shell am broadcast 后面的参数有:[-a ][-d ][-t ] [-c [-c ] ...] [-e|--es ...] [--ez ...] [-e|--ei ...] [-n ][-f ] []例如

2014-10-24 10:38:52 705

转载 Android实战技巧:ViewStub的应用

在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源。虽然把View的初始可见View.GONE但是在Inflate布局的时候View仍然会被Infl

2014-08-06 11:09:56 573 1

转载 andorid ANR keyDispatchingTimedOut的原因和解决之道

Android最佳实践之响应灵敏性可能会存在这样的情况,你写的代码通过了世界上所有的性能测试,但当用户尝试使用你的应用程序时,仍然让用户感到不爽。应用程序响应不够灵敏的地方包括——反映迟钝,挂起或冻结很长时间,或者需要花费很长的时间来处理输入。 在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Ap

2014-07-26 15:30:47 655

原创 一个解决字符过长显示问题的属性

相信很多做android的遇到过这个简单的问题,当汉字guoc

2014-07-23 10:53:02 1059

原创 对HashMap的value排序

HashMap sMap = new HashMap(); sMap.put("张三", 90L); sMap.put("李四", 79L); sMap.put("王五", 88L); sMap.put("赵六", 76L);   ArrayList> list = new ArrayList>(sMap.entrySet());     Collections

2014-05-28 17:15:48 699

原创 回调Service中的onstart方法时发生空指针异常

先来看一段代码:@Overridepublic int onStartCommand(Intent intent, int flags, int startId) {mAccType = intent.getIntExtra("acc_type", -1);AnsyTry mAnsy = new AnsyTry();mAnsy.execute("sync");ret

2014-04-08 16:10:39 1554

转载 android 默认铃音试听时不停循环播放

最近看到ringtones文件夹里面有的铃声文件很短,适合做短信通知铃声,就直接把这个铃声直接设置成短信铃声了,没想到来消息了之后,铃声一直响个没完没了,仔细研究了一番,终于发现问题了,    安桌铃声的循环播放不是系统决定的,而是在铃声文件上面做了ANDROID_LOOP的标记,而ringtones文件夹里面的铃声文件一般都有ANDROID_LOOP的标记,所以不适合直接拿来当短

2014-04-04 14:17:13 1731 1

windowManager.LayoutParams

各参数内容描述~~

2018-12-19

异步加载图片

异步加载网络图片/特殊http请求(平台获取),优先加载本地缓存图片。

2016-04-28

Android-PullToRefresh-master

国外大神之作,更新日期:2016/4/5

2016-04-06

IOS简单介绍

ios入门简介,一些简单介绍帮助你开始ios之旅。

2015-10-23

sortByName

将汉字转换为拼音,并逐个字符进行拼音排序。

2015-09-14

listview上拉下拉加载自动刷新

listview上拉加载下一页,下拉加载上一页共通处理。 首页header隐藏,末页footer隐藏。 效果图参照博文:listview上拉加载上一页 下拉加载下一页共通处理

2015-06-25

GetContact

类似于iphone中的手机联系人界面,通过右侧拼音字母快速查询联系人。

2015-05-29

Phone 源码 执行编译

Phone 源码 执行编译Phone 源码 执行编译Phone 源码 执行编译

2013-06-29

chrome 最新日文版

chrome 最新 日文版 安装时请保证网络正常连接。

2013-03-15

Firefox最新日文版

Firefox 日文版,Firefox Setup 19.0.2

2013-03-15

tomcat7.0 Web服务器

apache tomcat 7.0,WEB服务器,免费下载。

2013-03-12

apache2.2.tar.gz

apache2.2,WEB开发的利器,欢迎使用。

2013-03-12

android-sdk_r14(4.0)-windows.zip

这些资源都是免费的,Android4.0

2013-03-06

jre-7u17-windows-i586

jre-7u17-windows-i586,请下载使用

2013-03-05

SQL Server 2000程序员指南电子书

SQL Server 2000程序员指南电子书,非常详细。

2013-02-28

XML技术基础知识

XML技术基础知识的介绍,适合初学者学习。

2013-02-28

Java开发环境及开发工具

Java开发环境及开发工具的介绍,适合初学者学习。

2013-02-28

JavaBean技术基础知识

JavaBean技术基础知识,编码规则,JSP中如何使用javaBean。

2013-02-28

Ajax应用详解

Ajax应用详解,工作原理,请求响应等介绍。

2013-02-28

学习使用Ant

学习使用Ant,ant的安装配置,工程的搭建等

2013-02-28

JSP中邮件功能开发

JSP中邮件功能开发,javaMail开发及环境配置

2013-02-28

Struts+Spring+Hibernate

Struts+Spring+Hibernate的组合应用介绍。

2013-02-28

Spring应用详解

Spring应用详解。环境配置,Spring中注入依赖等方法介绍。

2013-02-28

Struts应用详解

Struts应用详解,工作原理,基本配置,创建javaBean模型组件等介绍。

2013-02-28

Hibernate应用详解

Hibernate应用详解,配置管理,session介绍等.

2013-02-28

Web报表基础知识

Web报表基础知识,JSP生成EXCEL报表等相关操作介绍.

2013-02-28

JSP数据库开发基础知识

JSP数据库开发基础知识,环境搭建,存储过程等。

2013-02-28

JSP技术基础知识

JSP技术基础知识详解,运行原理,环境搭建,基本语法等。

2013-02-28

HTML相关技术基础知识

HTML相关技术基础知识,表单标签,事件等详解。

2013-02-28

Servlet技术基础知识

Servlet技术基础知识,工作原理,环境配置,生命周期等详解。

2013-02-28

JSTL基础知识

JSTL基础知识详解,开发环境配置及标签使用等基础知识。

2013-02-28

EXCEL版本转换工具

这是一款EXCEL版本转换工具,可以使excel2007或者2010转换为2003.

2013-02-28

Java5.0API中文帮助文档

中文的java帮助文档,适合初学者以及经验者。

2013-02-28

网页制作完全手册

网页制作的一大利器: 动态 HTML (DHTML) 对象模型参考 DHTML 对象 DHTML 属性 DHTML 方法 DHTML 事件 DHTML 集合 HTML 参考 HTML 元素 HTML 字符集 样式表(CSS)参考 CSS 属性参考 CSS 长度单位参考 其他参考 命令标识符 缺省行为参考 htc 行为参考 可视化滤镜和切换参考 HTML+TIME参考 网页矢量图形标记语言 HTML 应用程序 技巧 语言代码 颜色表

2013-02-28

日语三级语法桌面

完整的日语三级语法桌面,方便你的学习,美化你的桌面。

2013-02-26

JavaScript帮助文档

能帮助刚接触JavaScript更好的理解JS,为以后更深层次的学习打好基础。

2013-02-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除