
Android
yhq1913
print ("email:yhq1913@sina.com")
展开
-
【Android-视频播放】实用vitamio自定义控制条位置
在开发中,用到了视频播放的功能,看到网上现成的开源的Vitamio已经很成熟了。就本着拿来主义直接实用了。但是播放中实用的进度条的位置有时候跟自己需求不是那么一致。下面是教程1.首先修改Vitamio中MediaController类,在此类中新加一个构造函数,代码如下:public MediaController(Context context,boolean f转载 2016-11-24 22:05:04 · 1032 阅读 · 0 评论 -
Android 47个小知识
1、判断sd卡是否存在 boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 2、TextView部分文字设置颜色 TextView tv = new TextView(this); //添加css样式 t转载 2016-06-24 11:32:51 · 339 阅读 · 0 评论 -
Android 6.0 运行时权限处理完全解析
一、概述随着Android 6.0发布以及普及,我们开发者所要应对的主要就是新版本SDK带来的一些变化,首先关注的就是权限机制的变化。对于6.0的几个主要的变化,查看查看官网的这篇文章http://developer.android.com/intl/zh-cn/about/versions/marshmallow/android-6.0-changes.html,其中当然包含Runtime转载 2016-05-06 22:30:05 · 415 阅读 · 0 评论 -
ListView解决嵌套冲突
经常写ListView会有嵌套冲突,解决办法有两个,自定义ListView,在onMeasure()方法写上下面的代码 @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int expandSpec = MeasureSpec.makeMeasureSpec(Integ原创 2016-05-06 20:26:28 · 409 阅读 · 0 评论 -
Android 设置字体
上次项目要求设置字体,我很纠结啊,百度了一些方法,都是把textView穿进去,很多个TextView太麻烦了,我突然有个想法,为什么不遍历,我就试着做一下,果然成了,如果封装了BaseActivity拿到布局后将跟布局放进去,然后设置字体的路径,***这里的路劲是assets下面的***/** * * @描述 : 设置字体 * @方法名称 : setTypeFace---->A原创 2016-05-06 20:22:35 · 341 阅读 · 0 评论 -
Android studio和eclipse获取当前版本号
// 版本名 public static String getVersionName(Context context) { return getPackageInfo(context).versionName; } // 版本号 public static int getVersionCode(Context context) {原创 2016-05-06 20:18:48 · 1821 阅读 · 0 评论 -
判断应用是否赋予某个权限
有的时候我们可能并不知道用户是否给我们的应用授予了某些权限,如果没有这个权限,App很可能有些功能无法实现理想的效果,这个时候就要用到这个方法,去判断一下,直接传入权限名称,然后根据返回的boolean类型进行判断给出对应的提示 /** * 判断应用是否赋予某个权限 * * @param permisstion */ public static Boolean isCh原创 2016-05-06 20:08:59 · 447 阅读 · 0 评论 -
Android控件Edittext限制回车换行
近期做项目,自己在Edittext布局的时候设置了android:singleLine="true"然后我输入文字的时候按了一个空格,结果虽然还是一行但是文字被顶上去了,这个让我很懊恼,可能有更好的方法解决,但是我是写的一个方法,如果有更好的方法,望指教,上代码: /** * 限制回车换行 * * @param et */ public static void Limits原创 2016-05-06 19:58:49 · 4390 阅读 · 1 评论 -
Android检查文本中是否有emoji表情
最近写了一个高德地图的云储存,发待储存的文本带有系统自带表情总会出问题,所以就写出了这么两个方法,给大家分享一下,很荣幸能帮到大家,上代码:/** * 检测是否有emoji表情 * * @param source * @return */ public static boolean containsEmoji(String source) { int len = so原创 2016-05-06 19:53:57 · 1719 阅读 · 0 评论 -
Android开源工具项目集合
最近因为要去外派了,工欲善其事,必先利其器!所以又回顾了一下自己github上所收藏的项目,也算是温故而知新吧。最流行的android组件大全 http://www.open-open.com/lib/view/open1409108030307.htmlAndroid开源项目分类汇总 http://www.open-open.com/lib/view/open1406272852转载 2016-06-24 12:03:28 · 673 阅读 · 0 评论 -
Android快速findViewById
Android通过findViewById绑定视图的方法,想必大家在Activity中已经用烂了。每次新建一个Activity类,一开始就需要调用findViewById方法给在xml布局中定义并需要在代码中处理的View控件添加绑定。如果界面较为复杂,导致View元素特别多,这个过程就会显得特别枯燥无味,同时没有任何技术含量。身为一名软件开发人员,又怎能在这种低级的工作上“重复造轮子”呢。今原创 2016-06-03 15:30:21 · 2351 阅读 · 1 评论 -
pulltorefresh属性简介
xml version="1.0" encoding="utf-8"?>resources> declare-styleable name="PullToRefresh"> 设置刷新列表的背景色 --> attr name="ptrRefreshableViewBackground" format="reference|color" />原创 2016-05-22 12:43:16 · 1401 阅读 · 0 评论 -
Android 屏幕适配笔记
1.自己怎么做适配的?2.市面上常用的做适配的方法?友盟指数 面试的时候,有面试者说让美工5套图片, 保存到相应的drawable目录下, 或者做5份布局来适应不同的屏幕。 缺点1:布局过多或者图片过多,造成包的臃肿,过大,占用很多系统内存 缺点2:布局或者图片过多,过于麻烦,耗时耗力1.屏幕大小 物理屏幕的大小,看屏幕的对角线原创 2016-07-07 19:18:17 · 409 阅读 · 0 评论 -
ListView实现Item局部刷新
对于ListView数据的刷新大家都知道,改变Adapter的数据源,然后调用Adapter的notifyDateSetChanged()方法即可。 但是博主在做公司项目的时候,有个下载模块,因为可能同时下载好几个数据,所以用的listview展示所有正在下载的内容。因为下载进度要实时更新,所以要不停的调用notifyDateSetChanged刷新数据。这样会不停的重新绘制整个listvi转载 2016-06-17 10:09:50 · 538 阅读 · 0 评论 -
List集合去重复
集合去重的几种方式:第一种: public List getRepeatContains(List ts) { // 存放不可重复的值,HashSet中是不允许存放重复的值的 HashSet set = new HashSet(); // 最终要返回的去重后的数据集合 List repeatElements原创 2016-06-16 14:42:09 · 632 阅读 · 0 评论 -
AndBase框架中db的使用
Android 操作数据库并不是一键容易的事情,麻烦的SQL语句,复杂的流程,但是,在编程中,我们只要记住,你觉得麻烦的时候,别人一样也会觉得麻烦,你不会封装总有人会,总会有一个你用的舒心的,andBase框架就是一个很好用的框架,里面封装了很多常用的功能,使用简单,而且你拿到源码后哪一项不想要了直接删除,重新编译都不会出问题,因为代码耦合性很低,话不多少了,我们来说一下如何使用andBase框架原创 2016-06-16 11:29:42 · 1341 阅读 · 0 评论 -
我的软件开发之路
我的软件开发之路:做开发也有近两年了,自己觉得充实了很多,对于两年前的我,我现在已经很充实了,但对于几年后的我,现在的我连个孩子都不算,我有着好强心,并且执着于工作,优快云是个很不错的平台,我喜欢分享,喜欢学习不一样的编码思路,我一定会很好的融入,互相切磋,不会辜负大家的期望,一起努力,让优快云做的更好,让我们得到更多我们想要的,有什么不足的地方望指教~,如果喜欢可以粉我~原创 2015-12-31 09:46:15 · 441 阅读 · 0 评论 -
高德地图判断地址输入是否正确
开发中经常会遇到判断地址输入是否正确,如果项目中集成了高德地图的SDK,那么为什么不用ta?1、声明控件: // 地理编码 private static GeocodeSearch geocoderSearch;2、在onCreate中创建实例: geocoderSearch = new GeocodeSearch(context); geocoder原创 2016-06-13 16:28:31 · 4661 阅读 · 0 评论 -
融联云通讯的底层实现协议简介
本次主要给大家介绍一下融联云通讯的底层实现使用的一些协议和协议的简介:融联云通讯就是我们常说的即时通讯,是一个非常不错的即时通讯SDK,使用简单,功能强大,效率高。 融联云通讯底层使用的是...原创 2016-05-23 15:44:37 · 6451 阅读 · 1 评论 -
android清理内存缓存和文件缓存
转载请注明:IT_xiao小巫 博客地址:http://blog.youkuaiyun.com/wwj_748前言本篇博客要给大家分享的如何获取应用缓存的大小和清除缓存的功能,我们知道我们应用当中经常会产生一些数据,比如图片的缓存,数据库文件,配置文件等等。我们开发产品的时候,可能会有这样的一个需求清除应用内缓存的数据,可以让用户选择删除应用内产生的数据,这也是比较人性化的设计点。例如笔者转载 2016-06-04 08:57:59 · 1246 阅读 · 0 评论 -
Android关闭软键盘
直接上代码 /** * 关闭软键盘 */ public static void closeFoldUpTheKeyboard(Activity activity) { InputMethodManager imm = (InputMethodManager) appContext.getSystemService(Context.INPUT_METHOD_SERVICE);原创 2016-05-06 19:51:14 · 372 阅读 · 0 评论 -
ListViewItem获取不到焦点
很多时候ListView子项获取不到焦点,即使你子项没有写获取焦点的时间但是 还是不行,接下来为初学者们解决如何让Item子项的布局内容不获取焦点,如果item子项是一个控件,设置控件的一个属性android:focusable="false"这样就可以了,如果是布局的话,就在跟布局设置android:descendantFocusability="blocksDescenda原创 2016-05-06 13:55:20 · 640 阅读 · 0 评论 -
Object 监视器方法分解成截然不同的对象, 以便通过将这些对象与任意Lock 实现组合使用,为每个对象提供多个等待 set
Administrator 反射工具 Condition 将 Object 监视器方法(wait、notify 和public class ReflectHelper { /** * 获取obj对象fieldName的Field * * @param obj * @param fieldName * @return */ public static Field get原创 2016-05-06 08:36:21 · 513 阅读 · 0 评论 -
史上最全github使用方法:github入门到精通
【初识Github】首先让我们大家一起喊一句“Hello Github”。YEAH!就是这样。原文 http://www.eoeandroid.com/thread-274556-1-1.htmlGit是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Ru转载 2016-01-11 21:47:23 · 713 阅读 · 0 评论 -
关闭模拟器内置键盘,防止输入框不能输入文字
定义Window对象private Window w;private AlertDialog dialog;设置窗体视图显示dialog = new AlertDialog.Builder(this).create(); // 获得dialog所在的Window w = dialog.getWindow(); // 设置不可触摸其他地方退出 dialog.setCa原创 2016-01-07 11:22:26 · 1498 阅读 · 0 评论 -
ListView嵌套ListView中如何得到ListView的高度
直接上代码. private void setListViewHeight(ListView fragLv) { //获得ListView的适配器 ListAdapter adapter = fragLv.getAdapter(); if (adapter == null) return;原创 2016-01-07 09:06:05 · 571 阅读 · 0 评论 -
AS Button 大写解决
最近发现Button的文本中,英文字母全部显示为大写,不管text中写的是大写还是小写如下图解决办法就是没一个Button都加一个android:textAllCaps="false" 就好了,目前没有发现如何全部一次性设置,大家如果有就分享一下yhq1913@sina.com。谢啦!原创 2016-01-22 15:00:34 · 985 阅读 · 0 评论 -
Android——Framework目录分析及系统启动过程以及目录简介
转自:http://blog.youkuaiyun.com/cubelee/article/details/73925521.目录树/framework/base/api /framework/base/awt/framework/base/build/framework/base/camera关于camera的HAL接口库。最终生成native转载 2016-01-01 20:23:19 · 6459 阅读 · 0 评论 -
自定义的五种Toast
自定义的五种Toast,希望能够帮助到大家,上代码!默认弹出,屏幕中间弹出,带图片弹出,弹出xml视图,长时间弹出; 欢迎指点。原创 2015-12-31 17:53:19 · 424 阅读 · 0 评论 -
Android:自定义ProgressBar的样式
样式资源:pro_bar_bg.xml,放在drawable文件夹下:原创 2016-01-18 10:33:29 · 449 阅读 · 0 评论 -
如何写出好的commit message
Git 每次提交代码,都要写 Commit message(提交说明),否则就不允许提交。?1$ git commit -m "hello world"上面代码的-m参数,就是用来指定 commit mesage 的。如果一行不够,可以只执行git commit,就会跳出文本编译器,让你写多行。?转载 2016-01-12 09:23:56 · 779 阅读 · 0 评论 -
验证是否是 邮箱||手机号
//是否是邮箱public static boolean isEmail(String strEmail) { String strPattern ="\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; Pattern p = Pattern.compile(strPattern); Matcher m = p.matcher(str原创 2016-02-17 08:50:44 · 570 阅读 · 0 评论 -
MVP举例说明
平时我们所说的MVP,就是Mode View Presenter Mode是业务逻辑层,View是试图层,Presenter是中间者,平时交互的时候, View和Presenter之间(View能够调用Presenter的方法,Presenter返回只能是通过监听) Mode和Presenter之间(在Presenter实例化出Mode的对象,调用其中对应的方法,同步方法通原创 2016-05-15 22:43:00 · 651 阅读 · 1 评论 -
Java反射方方法名
/** * 根据传进来的对象反射出getPickerViewText()方法,来获取需要显示的值 * @param item * @return */ private String getContentText(Object item) { String contentText = item.toString();原创 2016-05-04 21:01:38 · 362 阅读 · 0 评论 -
Parcelable序列化示例
首先定义字段,我这里定义成这样 // 消息ID protected int msgId; // 消息内容 protected String msgContent; // 消息用户名 protected String msgUserName; // 消息发送状态 protected int msgState; // 消息发送者的IP protected String msgMy原创 2016-05-27 14:32:32 · 428 阅读 · 0 评论 -
去掉ViewPager滑到第一个或者最后一个效果
相信在大家的开发中都能遇到这样的情况,在你滑动ViewPager到第一个或者最后一个的时候,就会出现下面图片的情况 解决的办法:原创 2016-05-10 14:31:41 · 2428 阅读 · 0 评论 -
SVN过滤
*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store ~* !* .* *.log work classes *.class *.db原创 2016-03-09 09:26:37 · 374 阅读 · 0 评论 -
java的3DES加密
package mai.util;import java.security.Security;import javax.crypto.Cipher;import javax.crypto.SecretKey;import javax.crypto.spec.SecretKeySpec;public class ThreeDES {private static final Stri原创 2016-03-08 20:05:07 · 326 阅读 · 0 评论 -
各种正则表达式验证
验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^\转载 2016-04-01 12:21:22 · 381 阅读 · 0 评论 -
Android正则表达式密码验证
^开头 $结尾必须带有什么,比如下面这句话是必须带有a-z(?=.*?[a-z])下面是,必须包含小写字母,数字,可以是字母数字下划线组成并且长度是6到16 Pattern z1_ = Pattern.compile("^(?=.*?[a-z])(?=.*?[0-9])[a-zA-Z0-9_]{6,16}$");原创 2016-01-16 19:08:15 · 3294 阅读 · 0 评论