- 博客(101)
- 资源 (4)
- 收藏
- 关注
原创 app启动秒开
每次在写demo,运行后发现总是白屏几秒后才显示layout里所写的内容,想到demo只是很简单的东西,完全没有耗时操作,不应该那么久才显示内容。最后找到了如下解决办法,记录如下:1,在res/drawable目录下,新建xml文件,如splash_screen.xml:xml version="1.0" encoding="utf-8"?>xmlns:android="http
2016-08-23 11:23:46
1991
原创 Fragment延迟加载
Fragment使用最多的地方应该就是ViewPager和TabLayout结合,实现类似微信既可以点击也可以左右滑动进行切换页面。或者使用Drawerlayout侧栏通过FragmentTransaction.add()、show()、hide();实现类似最新版Gmail侧栏点击切换。在实际开发中,考虑性能和体验等方面,需要在页面可见时,再加载数据。这样就有两种情况:1,在页面第一次可见时
2016-08-20 22:20:25
741
1
原创 How to Animate the Up-Button to Hamburger like in Gmail
在使用Drawerlayout时,Toolbar左上角的汉堡图标可以呼出侧栏菜单,当google推荐侧栏显示延伸到状态栏下面时,曾经的酷炫的汉堡变箭头动画就被盖住了,这么酷的动画似乎没有存在的必要。gmail首页中,点击列表任意item都会进入邮件详情页面,这个过程Toolbar左上角的汉堡图标会变换成箭头图标。如下:这样的话,当点击汉堡图标呼出侧栏菜单时,动画就可以去掉了。而且,
2016-08-15 18:43:54
566
原创 在Service中弹出对话框
我们知道,平常使用的dialog是依赖于activity的,但是我们也知道,系统在比如电量过低,或者按下关机键时,不论在那个界面,都会弹出对话框,
2016-07-18 15:04:09
9919
原创 自定义Toolbar高度
有时候实际使用场景Toolbar高度满足不了需求(比如平板),需要对Toolbar高度增加。 效果如下图:1,正常Toolbar高度(高度为actionbarSize)2,自定义Toolbar高度目前探索出来有两种方法:1,使用主题样式在styles文件添加如下:name="BaseTheme" parent="Theme.AppCompa
2016-06-26 11:49:02
6717
转载 Toolbar包含EditText时,点击键盘弹出时Toolbar被拉伸
在Android开发中我们经常会用到Toolbar,为了App更加美观,也会支持透明状态栏,这时,我们一般会这么做:在style-v19中添加item name="android:windowTranslucentStatus">trueitem>在Toolbar中添加android:fitsSystemWindows="true"这时,如果我们的layout中包含可滚动的控件
2016-06-24 18:03:34
3895
原创 Android点击除EditText外地方隐藏软键
在Android中,一般的隐藏和现实软键盘的方法为:public static void hideKeyboard(Context context, View v) { InputMethodManager imm = (InputMethodManager) context .getSystemService(Context.INPUT_METHOD_SE
2016-05-27 23:45:25
1524
转载 git仓库迁移和更新远程仓库地址
一、git仓库迁移1,从原仓库clone或pull到本地仓库git clone project_name 【old_remote_repository_address】2,在新的git创建一个新仓库。如果用gitolite搭建的git服务器,那么只需要在配置文件gitolite.conf上添加仓库和用户,然后push到服务器即可。3,进入clone下来的本地仓库
2016-05-04 20:15:43
7786
原创 更简单更全的material design状态栏
从实际使用需要出发,以最简单的方式实现了几种类型的MD状态栏。(重点在fitsSystemWindows的使用)0,使用前提targetSdkVersion 23;support librariy 23.3.0styles-v19: truestyles-v21+: true @android:color/transparent1,最普通的类型:只有一个ToolB
2016-04-14 12:59:55
6638
1
原创 HttpURLConnection获取url 302地址
有时候需要从访问的url地址中取出302地址,自己做处理(当然,是针对一次重定向)public void onStartTest() { new Thread(new Runnable() { @Override public void run() { test302(); } }).start(
2016-04-07 16:57:42
5486
原创 简单的封装log
public class MyLogger { public static boolean IS_DEBUG = true; /** * 最终的打印方法(含超链接) * 打印内容:tag:>>>>>>>>>>; * msg:方法名(类名.java:行数): 要打印的信息 * * @param msg 信息
2016-04-06 17:16:58
434
原创 Android Support 23.2 BottomSheetBehavior的使用
Android Support 23.2前几天新鲜出炉,赶紧磨刀霍霍向牛羊一:底部菜单犹抱琵琶半遮面(即peekHeight=56dp)1,新建工程BottomSheetBehaviorcompileSdkVersion 23buildToolsVersion "23.0.2"defaultConfig { applicationId "com.example.bot
2016-02-29 17:28:42
5465
原创 Android list列表滑动显示隐藏toolbar(RecyleView)
在之前一篇博客中,讨论了Android list列表滑动显示隐藏toolbar(listview),实现是google plus的效果。如果想要类似google photos的效果,更简单:只要在ToolBar里增加一句就可以:app:layout_scrollFlags="scroll|enterAlways|snap"xml version="1.0" encodi
2016-01-17 20:48:42
1038
原创 android4.4+实现MD状态栏并全屏显示内容
material design如此之美,美到令人窒息~~(●'◡'●)今天实现android4.4以上版本符合MD规范的状态栏,并可以全屏显示内容(即内容可以扩展到状态栏下)。效果图:android4.4:android6.0:好了,效果如上图所示,完美符合MD规范~~实现其实很简单:1,首先new module
2015-12-21 17:43:12
5812
转载 动态显示和隐藏状态栏
转载自http://blog.youkuaiyun.com/stevenhu_223/article/details/12428591小米Launcher有一个细节上的功能效果:在长按桌面应用图标时,会隐藏状态栏,然后在状态栏原有的布局上显示卸载或删除的操作栏。放手后,操作栏隐藏,状态栏显示出来。也就是说,这个过程是涉及到对状态栏的动态操作的。 View类提供了setSystemUiVi
2015-12-21 15:15:06
661
原创 Android list列表滑动显示隐藏toolbar(ListView)
前言:上下滑动列表时,toolbar跟着隐藏和显示,这种效果在google系应用中比较频繁出现,比如google plus。 google plus效果: 现在以ListVIew列表实现(两种方式):一,使用ListView的方法addHeaderView(headerView);1,build.gradle: dependencies {
2015-11-29 23:32:06
3637
转载 如何正确的获得一个view的宽和高
转载自http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0802/1641.html我们都知道在onCreate()里面获取控件的高度是0,这是为什么呢?我们来看一下示例:首先我们自己写一个控件,这个控件非常简单:1234567
2015-11-26 11:14:44
503
转载 ListView的HeaderView
http://my.oschina.net/xesam/blog/155542#comments目录[-](1)添加HeaderView之后尺寸布局被忽略。(2)添加HeaderView之后导致OnItemClickListener的position移位(3)LayoutInflater的infalte()(1)添加HeaderView之后尺寸布
2015-11-24 18:09:37
388
转载 Android 通过solid来定义不同边框的颜色,可以只定义一个边框的颜色
http://blog.youkuaiyun.com/aminfo/article/details/7782253以下是设置按钮的右边框和底边框颜色为红色,边框大小为3dp,如下图:在drawable新建一个 buttonstyle.xml的文件,内容如下:[html] view plaincopyxml version="1.0"
2015-10-28 20:43:27
3243
原创 NavigationView findViewById can't find header view
在最新的android support library, (23.1.0)中,NavigationView中的headerlayout里,view不能找到,返回的是null,但是在这版本之前确实可以的,在google+上找到了原因:所以,变通的方案有:View headerView = navigationView.inflateHeaderView(R.layout.navi
2015-10-23 13:04:35
807
转载 耐人寻味的“费米估算法”
最近,有媒体报道今年大学毕业的阿兵同学去合肥一家企业应聘程序员,遇到面试怪题:“合肥有多少猫和老鼠?”阿兵非常诧异,给出了几种抽样调查的方法,最终没有令面试官满意而遗憾离场。腾讯微博上有人指出这是一个典型的“费米问题”。从湖北教育新闻网上转来以下关于费米问题的内容——《耐人寻味的“费米估算法”》。 假如你是一个电信销售人员,公司经理要你制定一个销售计划,除了传统的销售渠道——大推销商和电
2015-10-15 10:19:37
18683
转载 Android Studio更新升级方法
转载地址:http://blog.youkuaiyun.com/hil2000/article/details/11395485(谢谢分享)自从2013 Google I/O大会之后,笔者就将android ide开发工具从eclipse迁移到Android Studio了,android studio一直在更新完善,为了与时俱进,我们当然要将工具更新到最新版本啦!其实更新本来是很简单,只要从An
2015-10-04 23:01:30
487
转载 Android 沉浸式状态栏攻略 让你的状态栏变色吧
转载请标明出处: http://blog.youkuaiyun.com/lmj623565791/article/details/48649563; 本文出自:【张鸿洋的博客】一、概述近期注意到QQ新版使用了沉浸式状态栏,ok,先声明一下:本篇博客效果下图:关于这个状态栏变色到底叫「Immersive Mode」/「Translucent Bars」有兴趣可以去 为什么在国内会有很
2015-09-22 23:15:14
707
转载 深入Java单例模式
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://devbean.blog.51cto.com/448512/203501在GoF的23种设计模式中,单例模式是比较简单的一种。然而,有时候越是简单的东西越容易出现问题。下面就单例设计模式详细的探讨一下。 所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存
2015-09-22 14:08:35
344
转载 ListView中含有Button时setOnclickListener应写在Adapter的什么地方
转载自http://blog.youkuaiyun.com/yangzl2008/article/details/7863938做Android开发,ListView是最常见不过了,因此对于ListView的自定义Adapter写法,应该也非常的熟悉,高效的Adapter编码,会使得携带大量ListView的数据展现显得非常容易。关于Adapter的写法,网上也有很多的例子,在此不再唠叨。为了提高
2015-09-17 10:12:18
589
转载 android百度定位后显示在地图上点击弹出气泡
1.到百度地图页面申请key,注意key和项目包名和数字签名一一对应的。http://developer.baidu.com/map/index.php?title=%E9%A6%96%E9%A1%B52.下载相应的sdk包 :http://lbsyun.baidu.com/sdk/download3. 创建项目,加入相应的包 在AndroidManifes
2015-08-13 18:52:31
2200
转载 运项目难点之ScrollView中嵌套百度地图(BaiduMap)的解决方案
由于产品的需求,有时候不得不在ScrollView中嵌套百度地图(BaiduMap)。但是,嵌套之后会存在一些问题,两个比较突出的问题是:1)ScrollView中事件处理与BaiduMap存在冲突。2)在BaiduMap随着ScrollView拖动的时候,存在黑影问题。很多人遇到过这两个问题,也比较棘手,所以希望百度能给出官方的解决方案。下面说说我的处理办法。1)ScrollView中事
2015-08-13 09:36:58
669
转载 离线安装Android SDK
直接举例:现在要下载Documentation for Android SDK, API 16, revision 31、点击Android SDK Manager右下角的按钮,打开Android SDK Manager Log2、在未加粗Found开头文本中,找到Documentation for Android SDK, API 16, revision 33、在Fou
2015-08-06 17:42:55
467
转载 Android中的Handler机制
直接在UI线程中开启子线程来更新TextView显示的内容,运行程序我们会发现,如下错 误:android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.翻译过来就是:只有创建这个控件的线程才能去更新该控
2015-07-26 17:59:34
403
转载 二分查找(递归与非递归)
递归方法[cpp] view plaincopyprint?int BinSearch(int Array[],int low,int high,int key/*要找的值*/) { if (low { int mid = (low+high)/2; if(key ==
2015-07-25 09:03:39
386
转载 JAVA设计模式之单例模式
本文继续介绍23种设计模式系列之单例模式。概念: java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例
2015-07-23 19:07:37
374
转载 AsyncTask和Handler的优缺点比较
原文地址:http://blog.youkuaiyun.com/onlyonecoder/article/details/8484200AsyncTask实现的原理和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的
2015-07-18 09:46:21
461
转载 Google推荐的图片加载库Glide介绍
英文原文 Introduction to Glide, Image Loader Library for Android, recommended by Google首发地址 http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0327/2650.html在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图
2015-07-11 13:43:11
742
转载 Android开发请求网络方式详解
大家知道Google支持和发布的Android移动操作系统,主要是为了使其迅速占领移动互联网的市场份额,所谓移动互联网当然也是互联网了,凡是涉及互联网的任何软件任何程序都少不了联网模块的开发,诚然Android联网开发也是我们开发中至关重要的一部分,那么Android是怎么样进行联网操作的呢?这篇博客就简单的介绍一下Android常用的联网方式,包括JDK支持的HttpUrlConnection,
2015-07-10 12:38:59
876
转载 计算字符串相似度算法——Levenshtein
0.这个算法实现起来很简单1.百度百科介绍:Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离的算法是首先由俄国科学家Levenshtein提出的,故又叫Levenshtein Distance。2.用途模糊查询
2015-07-09 12:58:28
595
转载 android实例 listview与sqlite数据绑定
ListView与Sqlite数据库绑定步骤:1.将Sqlite数据库的内容查询出来并放入数组列表中,形成ListView的数据源;2.适配器绑定数据源,显示在ListView item中。本文实现的ListView与Sqlite数据绑定的功能如下图-1图-1 ListView与Sqlite数据绑定的功能界面本例主要实现的是一个学生数据表(Sqlit
2015-07-08 12:56:13
444
转载 这就是观察者模式
来源 http://droidyue.com/blog/2015/06/27/desgign-pattern-observer/观察者模式是软件设计模式中的一种,使用也比较普遍,尤其是在GUI编程中。关于设计模式的文章,网络上写的都比较多,而且很多文章写的也不错,虽然说有一种重复早轮子的嫌疑,但此轮子非彼轮子,侧重点不同,思路也不同,讲述方式也不近相同。定义关于定义,最准确
2015-07-06 15:18:45
471
转载 Android中ListView的几种常见的优化方法
Android中的ListView应该算是布局中几种最常用的组件之一了,使用也十分方便,下面将介绍ListView几种比较常见的优化方法:首先我们给出一个没有任何优化的Listview的Adapter类,我们这里都继承自BaseAdapter,这里我们使用一个包含100个字符串的List集合来作为ListView的项目所要显示的内容,每一个条目都是一个自定义的组件,这个组件中只包含一个te
2015-06-27 01:37:12
498
android4.4+实现MD状态栏并全屏显示内容
2015-12-21
Android list列表滑动显示隐藏toolbar(ListView)
2015-11-29
个人博客数据库系统
2014-06-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人