![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
随想先感
这个作者很懒,什么都没留下…
展开
-
VS code开发运行react native项目
1、创建好react nativexia项目,使用VS code打开项目,在android文件下的local.properties写上sdk的路径2、在终端-新建终端,在终端执行 react-native start命令报react-native : 无法加载文件 C:\Users\admin\AppData\Roaming\npm\react-native.ps1,因为在此系统上禁止运行脚本 错误,这是因为权限问题导致的解决方法:找到powershell,使用管理员权限运行,然后输入s转载 2020-06-08 17:32:21 · 1733 阅读 · 1 评论 -
android 定时器
参考:http://blog.csdn.net/sinat_30058101/article/details/517749161,首先创建一个Handler对象 Handler handler=new Handler(); 2,然后创建一个Runnable对Runnable runnable=new Runnable(){ @Override public void run()转载 2017-08-28 17:45:12 · 1279 阅读 · 0 评论 -
View 的绘制流程
转载:http://blog.csdn.net/qinjuning/article/details/7110211 整个 View 树的绘图流程是在 ViewRoot.java 类(该类位于 Android 源码下面: D:\AndroidSource_GB\AndroidSource_GB\frameworks\base\core\java\android\view)的 performTra转载 2017-01-24 10:08:43 · 271 阅读 · 0 评论 -
Android自定义捕获Application全局异常
转载http://blog.csdn.net/jdsjlzx/article/details/7606423大家都知道,现在安装Android系统的手机版本和设备千差万别,在模拟器上运行良好的程序安装到某款手机上说不定就出现崩溃的现象,开发者个人不可能购买所有设备逐个调试,所以在程序发布出去之后,如果出现了崩溃现象,开发者应该及时获取在该设备上导致崩溃的信息,这对于下一个版本的bug修复帮助极大,转载 2017-01-22 20:08:33 · 265 阅读 · 0 评论 -
Gridview事件跟它item布局中的控件事件冲突
Gridview的点击事件和每个item中控件的事件需要设置下事件优先级 ,不然会造成事件冲突。 只需在item布局的根布局中加上android:descendantFocusability=”blocksDescendants”即可解决。 注:(用第三个即可) 属性的值有三种: beforeDescendants:viewgroup会优先其子类控件而获取到焦点 afterDes原创 2017-01-09 22:19:52 · 499 阅读 · 1 评论 -
编写通用的Listview、gridview的适配器
开发一个android项目,可能需要书写很多listview或gridview的适配器,需要继承BaseAdapter,所以开发一个万能的适配器,既减少开发代码又可提高工作效率。 转载:http://blog.csdn.net/bitter_2014/article/details/450568691、因为继承BaseAdapter需要实现以下方法public abstract class转载 2017-01-03 14:36:44 · 357 阅读 · 0 评论 -
volley获取缓存数据
使用volley获取网络数据,同时会吧数据缓存下来保存在/data/data/软件包/cache/volley下 。Volley 本身有缓存机制,不仅仅默认缓存图片,也有缓存Json数据。//mQueues是请求队列Entry entry =mQueues.getCache().get(url)if (entry != null) { String result = new String原创 2016-09-19 10:42:39 · 531 阅读 · 0 评论 -
自定义布局实现listview上拉加载下拉刷新
listview布局有时加载数据偏多,需要上拉加载第二页等更多数据,下拉刷新数据等功能,也有开源的框架XRefreshView ,可以参考http://www.w2bc.com/Article/44291,当初开发项目时,便于自己控制,就自定义布局实现这功能。1、自定义布局用来管理三个子控件:下拉头,包含内容的自定义listview,上拉头(代码有详细介绍)public class PullToRe原创 2016-08-26 17:01:35 · 1004 阅读 · 0 评论 -
开发app在android6.0运行直接退出解决(二)
上篇文章:http://blog.csdn.net/u013408979/article/details/52289534 只简单的解决能在android6.0运行,但没有根本的解决问题。 下面介绍解决方法: 参考 http://xdeveloper.cn/gai-jin-ban-android6-0quan-xian-gua-pei-bi-ni-xiang-de-huan-yao-j转载 2016-08-26 15:55:14 · 3378 阅读 · 0 评论 -
从零设计APP(设计)
1、从零开始做APP 系列之项目立项+预估时间篇 2、从零开始做APP 系列之界面设计篇 3、从零开始做APP 系列之切图标注篇 http://www.uisdc.com/app-design-slice-guideline 4、做设计稿前应该做哪些准备工作 http://www.uisdc.com/ui-design-plan-work 5、从零开始设计一款APP之视觉还原+上线准备转载 2017-09-18 18:48:50 · 580 阅读 · 0 评论 -
自定义view实现未读消息提示(小红点)
转载:http://blog.csdn.net/qq_28268507/article/details/70314844自定义view继承RadioButtonpublic class NotifyRadioButton extends RadioButton {Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);float radius;boolean转载 2017-11-15 09:42:19 · 5936 阅读 · 0 评论 -
listview item伸缩显示或隐藏
//记录当前展开项的索引 1、private int expandPosition = -1; 2、getview设置点击事件 holder.cbStretch.setOnClickListener(new OnLvItemClickListener(position)); //如果点击的是当前项,则将其展开,否则将其隐藏 if(ex...原创 2018-03-07 16:32:12 · 340 阅读 · 0 评论 -
调试时出现"waiting for debugger'弹出框
转载:https://blog.csdn.net/u010775335/article/details/76281347 今天调试项目时不知道为什么出现waiting for debugger弹出框,一直卡着不动,上一次调试的时候明明可以的。上网查很多人说是因为 (1)多开Studio,导致调试器多开,可能模拟器无法辨别是谁在调试,关掉其他的Studio,剩下要debug那一个!(2)...转载 2018-08-03 10:27:01 · 26842 阅读 · 5 评论 -
判断activity和fragment是否可见
1、判断activity在前台还是后台public static boolean isAPPBroughtToBackground(final Context context) { ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); ...原创 2018-08-01 17:37:23 · 4575 阅读 · 0 评论 -
Android热更新
1、为什么要用热更新 开发人员一定深有体会,上线的app突然发现一个bug影响用户使用,就需要重新打包App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装等步骤,用户还会抱怨怎么又升级了,频繁升级对用户体验也不好。就想到能不能像服务器哪样,如果有问题就替换某个文件重启,用户就可以继续使用了。这就衍生出热修复概念产生。2、什么是热修复 热修复...原创 2018-08-01 17:26:04 · 9532 阅读 · 1 评论 -
Android自动计算组件的宽度
因项目需要,最近实现一个语音录制功能,录制显示类似微信语音需要根据语音长度显示不同长度,如下图 1、计算屏幕宽高 2、根据屏幕宽高计算组件的宽高,先设置最小宽度=屏幕宽度*0.15f,最大宽度=屏幕宽度*0.7f,因为以一分钟60秒为一条语音,除以60就可得到一秒钟多长,voiceTimeLength是当前语音长度,最终把得到的宽度setLayoutParams即可,就可得到自动显示组件宽...原创 2018-07-19 09:59:13 · 606 阅读 · 0 评论 -
Android8.0版本升级需注意的坑
1、自Android6.0,Android7.0出来后apk升级安装就不能用以前的需要多申请权限,FileProvider(这就不多说了),Android8.0的出来,下载apk后不会跳转安装页面,是因为Android8.0多了未知来源权限,需要跳转手动打开申请未知来源权限或这设置列表—>安全与隐私—>更多安全设置—>安装未知应用 2、需要在清单文件添加权限, <uses...原创 2018-06-26 17:10:01 · 6858 阅读 · 0 评论 -
发布的APP并检测出病毒
发布的APP用户使用三四个月后,很多人反应腾讯手机管家检测出病毒,如下图所示 实在想不出怎么会被检测出病毒呢,就在网上各种搜,有点说引入第三方包货程序未反编译等等,检查程序发现这些情况是不存在的,最终到腾讯手机管家的官网论坛上问,回复说是去申诉,https://m.qq.com/complaint/, 最终邮件回复已解除风险,虚惊一场。。。...原创 2018-03-30 16:42:33 · 16998 阅读 · 1 评论 -
webview显示图片是自适应显示
webview可以显示多种信息,文本、图片、html、css等,因项目需要显示返回的图片信息,但返回的是图片服务地址,图片的大小相关信息都是服务端设置的,通过webview.loadDataWithBaseURL(null,”内容”, “text/html”, “utf-8”, null);显示,,其中图片显示的都超过手机屏幕,给用户体验不好,需要对webview设置相关属性即可让图片根据屏幕自适...原创 2018-02-24 14:59:52 · 1719 阅读 · 0 评论 -
Set toString之后会自动加空格
项目中吧每项选中数据添加到Set,然后把Set toString转字符之后,会自动在每项添加空格, selectSet.toString().replace(” “,”“); 这样去除空格原创 2018-03-09 15:01:16 · 3884 阅读 · 0 评论 -
gson引用泛型解析
android需要跟服务端交互数据,返回数据时json数据,需要解析,引用泛型很大程度上简化代码的解析。1、引入jar: compile 'com.google.code.gson:gson:2.7'2、返回数据类型大致类型: (1){“code”:”0”,”message”:”success”,”data”:[]} 一条数据 (2){“code”:”0”,”message”:”success转载 2016-08-24 17:21:44 · 1783 阅读 · 0 评论 -
webview的简单使用
WebView(网络视图)能加载显示网页,可以将其视为一个浏览器。可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用。 控件:<WebView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/webView" />加载网址:p原创 2016-08-24 16:41:17 · 282 阅读 · 0 评论 -
自定义Toast(解决小米手机或用户关闭通知不显示)
自定义Toast(解决小米手机不能弹出对话框或用户关闭通知不显示)原创 2015-12-09 15:56:04 · 4107 阅读 · 1 评论 -
EditText弹出输入框问题
EditText弹出输入框问题转载 2015-12-14 11:53:25 · 1129 阅读 · 0 评论 -
ScrollView嵌套Listview或GridView
ScrollView需要嵌套Listview转载 2015-12-14 11:31:24 · 601 阅读 · 0 评论 -
解决创建新Android项目时,会新建appcompat_v7
把Eclipse中的SDK跟新到22.6版本时,新建Android项目时,就会自动创建appcompat_v7,并且MainActivity继承ActionBarActivity,把appcompat_v7删除并改为继承Activity时,就会报各种错误。想创建新项目时,没有创建appcompat_v7,很简单,只需在新建项目的时候把minimum required sdk选择androi原创 2014-11-26 16:14:33 · 748 阅读 · 0 评论 -
surfaceview
SurfaceView是视图(View)的继承类,这个视图里内嵌了一个专门用于绘制的Surface原创 2014-10-15 09:55:45 · 450 阅读 · 0 评论 -
Android之MediaStore
一、MediaStore这个类是android提供一个转载 2014-10-13 10:47:22 · 730 阅读 · 0 评论 -
Android如何调试程序
调试程序是每个程序员工作中必不可少的部分,原创 2014-11-14 16:18:29 · 605 阅读 · 0 评论 -
android客户端消息推送功能实现方案
android客户端消息推送方案原创 2016-03-02 17:38:21 · 3739 阅读 · 0 评论 -
基于XMPP协议的消息推送的客户端和服务器端
基于XMPP协议的消息推送原创 2016-03-09 11:53:17 · 2940 阅读 · 1 评论 -
viewpager实现图片轮番(本地图片)
(项目中需要实现图片轮番效果,就查资料着重学习,开始是本地图片实现,最后又根据需求改成获取网络图片,便于维护) 原理就是利用定时任务器定时切换ViewPager的页面,根据图片个数动态生成下端的圆点。 效果图: 1、获取本地图片实现轮番效果 布局:两部分组成,viewpager和下端圆点的布局<?xml version="1.0" encoding="utf-8"?><FrameLay原创 2016-08-06 14:11:28 · 686 阅读 · 0 评论 -
android7.0 系统更新日志
《支持系统级分屏功能:Android 7.0系统更新日志一览》谷歌正式发布了Android 7.0正式版,首发推送了多款Nexus设备。除了一大堆常规的BUG修复之外,Android 7.0还自带分屏功能,让你充分感受大屏幕带来的实用性。详细见:http://www.anzhuo.cn/news/p_13924转载 2016-08-24 10:40:29 · 500 阅读 · 0 评论 -
volley二次封装
volley二次封装原创 2016-08-23 16:24:30 · 1124 阅读 · 0 评论 -
开发app在android6.0运行直接退出解决
随着android系统的不断更新、优化,Android6.0带来了新的权限管理方式,Android 6.0中权限分为两种,普通权限和危险权限(即运行时权限,下面统称运行时权限)。当小于Android6.0时,开发app所需的权限只需在应用manifest中申明所需要的权限即可,但是android6.0需要分开申明,在应用manifest中只申明普通权限,系统会自动授予这些权限;如果对android原创 2016-08-23 11:40:05 · 6072 阅读 · 0 评论 -
上传一张或多张图片(使用volley框架)
volley上传一张或多张图片转载 2015-12-09 16:05:12 · 6937 阅读 · 0 评论 -
Android-Universal-Image-Loader开源框架的使用
android中对图片显示加载如果处理不好,易出现OOM。因最近项目用到,就对好用效果好的开源框架Android-Universal-Image-Loader研究下,它提供了一个可重复使用的仪器为异步图像加载,缓存和显示。1、首先需要在自定义的application中设置全局性的配置,主要有线程类、缓存大小、磁盘大小、图片下载与解析、日志方面的配置。 (参数只能配置一次,如多次配置,则默认第一次原创 2016-08-09 10:20:08 · 595 阅读 · 0 评论 -
retrofit2.0的简单使用
转载参考:http://blog.csdn.net/greathfs/article/details/51892833网络框架有okhttp、volley,AsyncTask,现在流行retrofit,相比工作变得更简单性能更好。简介: Retrofit 是一个Square开发的类型安全的REST安卓客户端请求库。这个库为网络认证、API请求以及用OkHttp发送网络请求提供了强大的框架 。转载 2016-08-18 14:17:28 · 286 阅读 · 0 评论 -
未读消息提醒
项目中需要展示代办事项的个数,就参照微信未读消息,主要在于布局设置效果图: 布局:在imageview的右上侧,默认是隐藏的,当个数大于0时,才会显示<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:原创 2016-08-06 14:56:43 · 4920 阅读 · 0 评论 -
GridView计算适配大小展示
gridview展示九宫图,大小计算不好,适配不同尺寸的手机,会出现上下滚动的效果,需要在gridview的适配器中计算每个控件的大小,根据屏幕宽高计算展示效果图: public class MenuGridViewAdapter extends BaseAdapter { private GridView mGridview; private Context mContext;原创 2016-08-06 14:46:39 · 2390 阅读 · 0 评论