Android
zrbcsdn
时而聒噪,时而安静,时而袅袅升烟。
展开
-
Android 网络链接状态 网络是否可用
判断Android 网络已连接状态下,网络是否可用。首先分析是否链接网络;在根据Android版本判断网络是否可用:6.0以后系统提供API可用,6.0之前使用ping命令即可。public static boolean netCanUse(Context context) { if (context != null) { ConnectivityManag...原创 2018-04-18 11:11:01 · 1460 阅读 · 0 评论 -
Android uses-permission权限
Android uses-permission权限说明官方文档:http://developer.android.com/reference/android/Manifest.permission.html1) ACCESS_CHECKIN_PROPERTIESAllows read/write access to the "properties" table inthe原创 2015-12-28 15:23:15 · 594 阅读 · 0 评论 -
Android 自定义View (一)
转自:http://blog.csdn.net/lmj623565791/article/details/24252901转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24252901很多的Android入门程序猿来说对于Android自定义View,可能都是比较恐惧的,但是这又是高手进阶的必经之路,转载 2016-03-09 10:47:11 · 373 阅读 · 0 评论 -
AndroidUI设计规范(完整版)
原文:http://www.ui001.com/article/303.html转载 2016-03-15 10:25:59 · 2003 阅读 · 1 评论 -
RadioButton.check(ChildId()),后执行3次OnCheckedChangeListener的问题
RadioButton.check(ChildId()),后执行3次OnCheckedChangeListener的监听,原因不明。 解决方法: 把 rg.check(rg.getChildAt(position).getId()); 替换成 ((RadioButton) (rg.getChildAt(position))).setChecked(true);就解决问题了。原创 2016-03-31 18:14:08 · 896 阅读 · 0 评论 -
Android 获取控件宽高的3种方法
/** * 获取控件宽高 此方法会加载onMeasure三次 * * @param v * @return 宽高坐标 */ int w = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED); int h = View.MeasureSpe原创 2016-04-01 17:47:25 · 715 阅读 · 0 评论 -
android 透明状态栏与沉浸式
android 透明状态栏与沉浸式,我也是一直迷糊,弄不清楚,后来,在知乎,看见一位会写中文的国外友人做如下理解,我觉得有几分道理,贴出来跟大家分享。链接:http://www.zhihu.com/question/27024901/answer/34996626来源:知乎知乎 2.1.1 采用的是 Translucent Bar, 中文译名: 透明栏. 一般呈现的是状态栏翻译 2015-11-16 14:54:48 · 806 阅读 · 0 评论 -
android 状态栏和导航栏(status and navigation bars)
官网:http://developer.android.com/intl/zh-cn/training/system-ui/index.htmlSystem Bars 包括:顶部的状态栏和底部的导航栏(status and navigation bars)声明:调节 status and navigation bars 要求系统版本 >4.0。目前android 不支持=隐藏翻译 2015-11-17 17:12:52 · 3856 阅读 · 2 评论 -
Material Design 中文版
众多大神集体翻译,感受与众不同的Material Design ,让你的app炫起来!链接:Material Design 中文版http://wiki.jikexueyuan.com/project/material-design/原创 2015-11-02 16:30:10 · 793 阅读 · 0 评论 -
Android数据库高手秘籍(二)——创建表和LitePal的基本用法
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/38556989上一篇文章中我们学习了一些Android数据库相关的基础知识,和几个颇为有用的SQLite命令,都是直接在命令行操作的。但是我们都知道,数据库是要和程序结合在一起使用的,单独对一个数据库去进行増删改查操作并没有什么意义,因此今天我们就来学习一下如何在Android程转载 2014-09-28 11:24:05 · 685 阅读 · 0 评论 -
播放gif控件 GifMovieView.java
原项目地址:https://github.com/sbakhtiarov/gif-movie-view直接播放gif,轻松加愉快原创 2016-01-27 11:24:48 · 1455 阅读 · 1 评论 -
Glide 3.0 介绍
Glide快速入门: 英文原文 中文Glide 3.0 的新功能 1. gif动画解析:还是那样,用Glide.with().load()加载一个gif动画,glide会加载显示gif。另外,用Glide.with().load().asBitmap()总是加载静态图。用Glide.with().load().asGif会失败,除非加载的图片是gif. 2. 本地视频剧照:除了解析gi翻译 2016-02-01 18:11:45 · 1118 阅读 · 0 评论 -
ViewPager 设置滑动翻页距离(亲测有效!)
前言:老板说,android项目的这个viewpager不灵敏,需要滑动较长的距离才可以翻页。要求缩短滑动距离,实现较短距离翻页。这个东西,确实不好弄,网上查了很多资料,试验了很多方法,直到下面转载的文章,解决了我的问题。注意,要修改viewpager的源码,也就是说,要把Viewpager源码copy到项目,进行修改。(包括PageAdapter的源码也要copy)。亲测,有效!转载 2017-02-12 11:36:47 · 9490 阅读 · 10 评论 -
关于设备唯一标识
http://blog.csdn.net/dfqin/article/details/45533455首先结论是令人失望的,对于android来说,这是一个没有完美方案的问题。大家只能努力提高它的准确性,对于大的公司来说,可以自己开发出一套自己的机制,例如我上家公司成立过一个手机指纹的项目,专门处理设备唯一性的问题防止用户刷单,原理很简单,就是尽可能的把手机能读取到的信息获取到上传到后台,甚至令人...转载 2018-03-02 09:34:15 · 4570 阅读 · 1 评论 -
Android设备唯一码的获取
https://www.cnblogs.com/maohai/p/6454013.htmlAndroid设备唯一码的获取UTDID是集团无线设备统一ID方案,目的是给每一台设备一个ID,作为唯一标识。UTDID由客户端生成,并在设备中各个客户端之间共享。UTDID的生成中包含时间戳和随机数等,因此重新生成的UTDID值一定是会改变的,UTDID的稳定性强依赖于手机存储,UTDID方案是一个重在持久...转载 2018-03-01 15:30:49 · 1049 阅读 · 0 评论 -
Android模块化(二)——模块通信和模块间服务调用
转自:此文属于finddreams的原创博客,转载请注明出处:http://blog.csdn.net/finddreams/article/details/78349267上一篇《我所理解的Android模块化(一)》笔者讲到了Android模块化的基本知识和模块化跳转路由的基本用法,解决了模块化中跳转的问题,下面就来讲讲如何实现模块化之间的通信和跨模块方法调用。模块转载 2017-12-21 18:01:01 · 1217 阅读 · 0 评论 -
Android WebView 关闭无痕浏览
只需做如下设置: settings.setDatabaseEnabled(true); settings.setAppCacheEnabled(true); settings.setDomStorageEnabled(true);原创 2017-08-29 17:42:47 · 2662 阅读 · 0 评论 -
EditText 屏蔽选择、复制、粘贴等一切剪切板的操作
EditText 如何屏蔽选择、复制、粘贴等一切剪切板的操作呢?找到的资料,总结起来都是这的:editText.setLongClickable(false);editText.setCustomSelectionActionModeCallback(new ActionModeCallbackInterceptor()); private class ActionModeCallbackIn原创 2017-08-25 09:54:50 · 10874 阅读 · 2 评论 -
Android NDK开发——CMake的编译使用
原文:Android NDK开发扫盲及最新CMake的编译使用mark: 1 NDK 简介在介绍 NDK 之前还是首推 Android 官方 NDK 文档。传送门官方文档分别从以下几个方面介绍了 NDKNDK 的基础概念 如何编译 NDK 项目 ABI 是什么以及不同 CPU 指令集支持哪些 ABI 如何使用您自己及其他预建的库 本节将会对文档进行总结和补充。所以建议先浏览一遍文档,或者看转载 2017-08-07 17:19:09 · 2181 阅读 · 0 评论 -
Layout新姿势—ConstraintLayout
Layout新姿势—ConstraintLayout。突然发现as的创建新项目时,导入的默认布局是个新名词——ConstraintLayout。这个新姿势,感觉有必要搞一搞,转载了郭林大神这篇文章,撸起来吧~~~~原文:http://blog.csdn.net/guolin_blog/article/details/53122387内容如下:今天转载 2017-06-01 17:15:16 · 1034 阅读 · 0 评论 -
Kotlin干货集中营
Kotlin 成为 Android 官方支持的编程语言。 笨鸟先飞,不要成为后知后觉的那一簇。来死狗吧! 1. kotlin的官方github地址 2. kotlin语言中文站 3. Kotlin 语言官方参考文档 中文版 4. 《Kotlin for android developers》中文版翻译 5. 张涛的开源实验室-《kotlin 一门强大的语言》 6. 大精-wing的地方原创 2017-05-19 14:26:00 · 882 阅读 · 0 评论 -
Android WebView加载https网页(亲测)
只需加两处设置: 1 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); }2webView.setWebViewClient(new WebView原创 2017-04-25 17:09:53 · 12445 阅读 · 1 评论 -
解决fragment错误 Can not perform this action after onSaveInstanceState
原文:http://www.cnblogs.com/zgz345/archive/2013/03/04/2942553.html今天使用Fragment的时候,出现了这个错误 IllegalStateException: Can not perform this action after onSaveInstanceState: E/AndroidRuntime转载 2016-12-20 10:01:20 · 664 阅读 · 0 评论 -
shape虚线运行显示实线问题
真吊,这个问题搞好好一会。mark一下。 首先 shape_dashed.xml代码:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line"> <stroke androi原创 2016-11-15 15:59:50 · 714 阅读 · 0 评论 -
搜索图标居中的搜索框~iOS风格搜索框
原文:http://www.bkjia.com/Androidjc/1012884.html自定义EditText实现类iOS风格搜索框,edittextios最近在项目中有使用到搜索框的地方,由于其样式要求与iOS的UISearchBar的风格一致。默认情况下,搜索图标和文字是居中的,在获取焦点的时候,图标和文字左移。但是在Android是并没有这样的控件(可转载 2016-03-21 15:04:49 · 4164 阅读 · 0 评论 -
Listview indexOutOfBoundsException: Invalid index 1, size is 1
ListView 有着比较多的bug的存在。比如 经常出现 indexOutOfBoundsException: Invalid index 1, size is 1;总结的经验是:当存放数据的list发生变化后,listview任然发生变化(比如Listview滚动),会调用adapter的getView,但这时存放数据的list可以已经被制空了,当然会报错。解决方法:要么 当l原创 2016-01-29 14:04:36 · 2030 阅读 · 0 评论 -
android 移动view
原址:http://www.tuicool.com/articles/IFZb2mR我们经常要做一些效果,比如,点击之后的动画,随着手指的移动而移动。那么它们如何实现的呢?我们直到,view的自动移动,我们可以设置动画,比如之前写的Fragment的进入与弹出动画:https://github.com/nuptboyzhb/FragmentAnimationDemo 那么,我们如何是一转载 2015-12-07 17:45:18 · 419 阅读 · 0 评论 -
android获取控件宽高
//方法一 int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); imageView.measure(w, h原创 2015-12-07 16:37:48 · 422 阅读 · 0 评论 -
android中ListView多次重复执行getView的问题
以前倒是没有注意listview的getView会重复执行多次,这次因为布局比较复杂,所以在测试的时候去断点跟踪,发现同一条数据不断的重复执行。觉得很奇怪,于是上网搜索了一下。网上的解释基本一致,就是ListView布局时height和width都不是fill_parent,导致不断计算高度,不断刷新。或者说它的父容器没有设置成fill_parent。 可以布局太复杂的情况下转载 2015-12-24 13:05:10 · 1567 阅读 · 0 评论 -
设置popwindow不被键盘挡住
//设置成不被键盘挡住this.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED);this.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);原创 2015-12-21 14:56:11 · 1694 阅读 · 0 评论 -
FFmpeg命令及基础
FFmpeg命令及基础目标:FFmpeg 命令和基本用法FFmpeg的转码流程。常见的视频格式包。把内容从视频文件中抽取出来。从一种格式转换为另一种格式。放大和缩小视频。旋转,翻转,填充,裁剪,模糊,锐化视频。给视频加logo,删除logo。给视频加文本,动态文本。处理图片。录像,添加动态logo,截图,马赛克视频。 第一部分 基础术语容原创 2015-12-11 14:58:37 · 1271 阅读 · 0 评论 -
VideoView 设置静音
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { mp.setVolume原创 2015-12-29 14:39:54 · 12134 阅读 · 2 评论 -
Process 'command '**/ndk-build.cmd'' finished with non-zero exit value 1
What went wrong:Execution failed for task ':library:compileReleaseNdk'.> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'E:\android-ndk-r原创 2016-03-23 10:35:58 · 7646 阅读 · 2 评论 -
TextView部分文字变色、可点击。(微博话题 变色、点击)
仿照微博话题,实现 textview 部分文字变色,且可点击。 直接看代码: private CharSequence setTextView(String desc) { /*正则表达式 取出 两个#之间的内容 (不包含#) */ Pattern p = Pattern.compile("#([^\\#|.]+)#"); /*android 提供原创 2016-05-27 13:43:39 · 2415 阅读 · 1 评论 -
Android Gradle 介绍 官方教程
这篇教程是根据官方的gradle视频教程整理出来的。 https://classroom.udacity.com/ 这里有很多google官方做的视频教程。自从遗弃了eclipse,猛追as以后,出现一个gradle。对于彩笔的我,gradle是个鸟玩意。完全不懂。相信玩转gradle的人也不多。好在用as创建项目,as会做好默认gradle的脚本,如下: 虽然不懂gradle,但是随便一原创 2016-05-06 15:57:30 · 5190 阅读 · 2 评论 -
Android TextView Span的使用详解
转自:http://www.cnblogs.com/flyme2012/p/3063667b50f3a62dcd29d821123677b1.htmlAndroid中的TextView是个显示文字的的UI类,在现实中的需求中,文字有各式各样的样式,TextView本身没有属性去设置实现,我们可以通过Android提供的 SpannableString类封装。Android提供了很多的S转载 2016-11-16 15:22:06 · 3201 阅读 · 0 评论 -
Android命名规范
原文:https://github.com/D-clock/Doc/blob/master/Code/Android编码命名规范.mdAndroid编码命名规范今年正式本科毕业,目前为止参与过的团队开发项目也有四五个。阅读过各式各样的混乱代码,最离谱的见过所有的变量都用中文拼音首字母,心中真是万千匹草泥马在奔腾。由此,也意识到命名对于编码的重要性。有人说,看一个开发者的水平如何,从看他代码的命名可以转载 2016-10-19 11:09:49 · 387 阅读 · 0 评论 -
Android混淆笔记
如何添加混淆呢? 这里我们使用as作为开发工具。一般我们会在gradle里进行如下设置: buildTypes { release { minifyEnabled false //是否压缩(没有用的方法以及资源 会进行压缩) proguardFiles getDefaultProguardFile('proguard-原创 2016-09-28 11:37:00 · 838 阅读 · 0 评论 -
监听软键盘 刷新布局视图
第一步:需要在manifest的相应activity中设置android:windowSoftInputMode=”stateHidden|adjustResize” 里面的值很迷糊,备注一下: 【1】stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置【2】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个act原创 2016-10-09 17:44:56 · 668 阅读 · 0 评论 -
Rxjava学习笔记
创建一个Observable的几种方法1. create() 通过.create(new Observable.OnSubscribe())方法创建一个Observable,在参数OnSubscribe的call()方法里发射动作,以及接收逻辑。下面的例子描述的是获取手机中已安装应用的信息:Observable.create(new Observable.OnSubscribe()原创 2016-07-26 13:30:53 · 403 阅读 · 0 评论