- 博客(106)
- 资源 (19)
- 收藏
- 关注
原创 popupWindow在android7.0以上显示全屏的问题
在Android7.0以上版本调用popupWindow的showAsDropDown()方法,始终显示全屏,今天记录下解决这个问题的方法自定义popupwindow复写showAsDropDown()方法解决这个问题package com.luckongo.tthd.view;import android.content.Context;import android.graphics.Rect;
2017-12-20 17:35:10
6179
原创 adnroid报错:app:transformClassesWithDexForDebug
今天在github上面git了一个很不错的项目,但是运行起来就报了这个错,百思不得其姐。图如下: 查了网上说是项目依赖库,重复引用的问题,结果往这方面查,发现依赖库没有问题。最后发现在app的build.gradle下面设置多分包为true就解决了: multiDexEnabled true 这是一个奇怪的问题,好了记录下,帮助更多为这个问题迷茫的人,解决的图如下:
2017-11-16 17:11:39
626
原创 dialog居于底部并使得宽度占满整个屏幕宽度
dialog居于底部并使得宽度占满整个屏幕宽度在开发过程中遇到使用BottomShellDailog的时候,在竖屏情况下能够正常从底部弹起并处于底部,但是在横屏情况下它就显示不全了,找了很多方法都没解决,后来就修改方案,直接让我自定义的dialog继承系统的dialog,然后在自定义dialog show的时候调用以下方法,就完美解决了,全部代码如下:自定义的dialogclass LivePul
2017-08-25 11:56:11
1687
原创 EditText自定义输入数据格式,比如只能是数字和字母(身份证最后一位X)
在项目中很多EditText会遇到特定的输入限制,比如在项目中遇到了省份证输入,这个时候EditText的inputType限定输入就不满足输入要求,还好EditText有一个属性可以使用,很少见。代码如下: <EditText android:layout_width="230dp" android:layou
2017-05-10 11:50:47
2979
原创 Android自定义View、ViewGroup的OnMeasure的原理和模板代码
在开发中,当Android原生控件不能满足我们的需求的时候,就需要自定义View。View在屏幕上绘制出来先要经过measure(计算)和layout(布局)。 什么时候调用onMeasure方法? 当子View的父控件要放置该View的时候,父控件会传递两个参数给View——widthMeasureSpec和heightMeasureSpec。这两个参数是View可以获取的宽高尺寸和模
2017-03-09 17:00:15
854
原创 AndroidStudio git github项目时报error setting certificate verify locations !
今天使用 AndroidStudio down Github 上的项目时,总是提示clone failed,提示信息为:error setting certificate verify locations !疑惑不解,网上查了方法后,得知自己的ssh的问题,之需要在git终端中输入一下命令就行:$ git config --global http.sslverify "false"
2017-03-09 14:42:38
1157
原创 19个必须知道的Visual Studio快捷键
本文将为大家列出在Visual Studio中常用的快捷键,正确熟练地使用快捷键,将大大提高你的编程工作效率。项目相关的快捷键Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示Solution Explorer(解决方案资源管理器) Shift + Alt+ C = 添加新类 Shift + Alt + A = 添加新项目到项目编辑相关的键盘快捷键Ctrl
2017-03-06 16:50:05
4657
原创 彻底解决,Android Studio每次版本升级,Refresing 卡住的问题
每次升级Android studio,gradle都会相应的升级,你当前的项目就会重新构建,然而,如下图1所指 每次都会要Refreshing很久,这里它主要是重新去按照2所指的地址去下载最新的gradle-3.3-all.zip这个压缩包。由于是某些原因(你懂的),google有些地址是访问不了的。这个下载就会卡住,然后就一直在这里卡着。 接下来就是怎么解决。首先,网上把这个最新的radl
2017-03-03 11:02:30
2618
原创 Git常用命令
git init //把目录变成git管理仓库,生成隐藏.git文件git add xx.txt //把xx.txt添加到暂存区git commit -m “提交备注” //提交文件 –m 后面的是注释。git status //查看状态git diff xxx.txt //查看修改了什么内容 知道了对readme.txt文件做了什么修改后,我们可以放心的提交到仓库
2017-02-28 15:02:35
506
原创 彻底解决,dialog点击外部消失,键盘没有消失的问题
dialog中包含了输入框EditText,当点击外部消失的时候,键盘就是不消失,原来有问题的代码如下: mDialog.setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface
2017-02-24 10:16:17
5461
原创 怎样退出终止App
当我们在app主页点击返回按钮的时候,会弹出一个窗口提示确定退出app,这个时候可能你的App中Activity栈里面还有多个Activity,直接finish首页的activity是退不出去的,这个时候就应该使用如下几种方法完全退出app 在application中定义一个单例模式的Activity栈来管理所有Activity。并提供退出所有Activity的方法。 AndroidManife
2017-02-20 16:24:50
1590
原创 加速启动activity
减少onCreate的时间,那就精简onCreate里的代码。放在onResume里好了。为了用户体验更好一些,把页面显示的View细分一下,放在AsyncTask里逐步显示,如果你够熟练,用handler更好,这样用户的看到的就是有层次有步骤的一个个的view的展示,不会是先看到一个黑屏,然后一下显示所有view。最好作成动画,效果更自然些。利用多线程的目的就是尽可能的减少onCreate和onR
2017-02-20 16:17:29
841
转载 Android开发之多级下拉列表菜单实现(仿美团,淘宝等)
注:本文转载于:http://blog.csdn.NET/minimicall/article/details/39484493 我们在常用的电商或者旅游APP中,例如美团,手机淘宝等等,都能够看的到有那种下拉式的二级列表菜单。具体如图所示:上面两张图就是美团的一个二级列表菜单的一个展示。我相信很多人都想开发一个跟它一样的功能放到自己的APP中。好,接下来我们就开始动手,解决它。1.结构分析 首
2017-01-13 09:57:45
5360
原创 Material Design之RippleDrawable详解
Material Design之RippleDrawable详解自从android5.0开始以后,google就推出了一套UI设计语言materialdesign,俗称:材料设计。其中一个最直观的效果就是涟漪效果,就是可以点击的控件会有一个波浪的效果。这个效果就是RippleDirawable。今天就来研究下这个RippleDrawable。 官方地址 https://developer.a
2016-11-09 17:39:00
7342
原创 Android添加图片水印
Android添加水印 开门见山,添加水印的方法非常简单,其实就只有3个步骤:载入原始图片载入水印图片保存带有水印的图片实现的原理就是:获取原始图片的宽高,然后,新建一个同样宽高的bitmap,将这个新的bitmap作为画布,接着,就在这个画布上面画原图,画水印图片,有文字就接着画文字。 上面哪个顺序一定不能乱,不然你可能就看不到水印,或则文字了,因为画在原图下面去了绘制水印的代码如下:
2016-11-08 19:19:20
2841
原创 解决通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)的错误
解决androidstudio通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)的错误Android模拟器端口被占用问题的解决办法 刚刚在用手机调试的时候遇到了cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次(10048)的 问题,adb始终无法启动,试了很多方法,好像只有重启电脑可以。这
2016-11-04 11:03:55
41581
7
原创 android中使用AES加解密
android中使用AES加解密 今天在android项目中使用AES对数据进行加解密,遇到了很多问题,网上也找了很多资料,也不行。不过最后还是让我给搞出来了,这里把这个记录下来,不要让别人走我的弯路,因为网上绝大多数的例子都是行不通的。好了,接下来开始讲解 1、Aes工具类package com.example.cheng.aesencrypt;import android.text.TextU
2016-11-02 17:38:28
4624
原创 linux下安装编译ffmpeg
1.首先用git从官网clone下载源文件: git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg 如果linux没有安装git就先安装git,命令如下: sudo apt-get install git 2.运行自动配置 ./configure –enable-shared –prefix=/usr/local/ffmpeg 其中:–en
2016-11-01 16:34:45
798
翻译 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-10-14 11:14:18
375
原创 怎样一开始打开activity就启动google的下拉刷新(仿优酷的下拉刷新)
怎样一开始打开activity就启动google的下拉刷新(仿优酷的下拉刷新) 因为平时一直都是使用优酷app观看视频等,然而,一直对它的一个现象不思其解,就是只要有下拉刷新的地方,一旦这个页面一启动,就会首先看到google官方推荐的下拉刷新的小圆圈在转,正在处于刷新状态。然后我以前也学过关于google下拉刷新swipRefreshLayout的使用,连接点击打开链接查看go
2016-06-30 20:49:01
1808
原创 怎样防止App在后台运行,点击应用桌面图标重新启动?
怎样防止App在后台运行,点击App桌面的图标重新启动? 在项目中,遇到一个问题百思不得其解,那就是:我在app使用过程中,点击了home键,然后去看看微信之类的其他应用,这个时候再点击app桌面的图标,这个时候app是重新启动的,而不是从上次停止的界面开始的。 对于上面的情况,我觉得既然我的app已经在后台还运行着,为什么就不能继续重上一个
2016-06-23 21:23:11
11999
7
原创 Android5.0的Palette(调色板)、视图阴影、着色和裁剪介绍
Android5.0的Palette(调色板)、视图阴影、着色和裁剪介绍 随着Android5.0的发布,google带来了Material Design,俗称:材料设计。并带来了一些新的东西,这里就一一介绍这些新的设计元素。1、Palette(调色板) 在5.0以后的android版本中可以使用调色板来提取颜色,让app的主
2016-06-12 22:09:01
4908
原创 自定义ViewPager的导航indecator(非常实用和主流)
自定义ViewPager的导航indecator(非常实用和主流) xi现在很多App的欢迎页或者主页的轮播下面都有indicator(就是那个随着viewpager滚动而跟着滚动的小圆点);然后很多显示效果基本就是放一个选中的图片和一个未选择的图片,让这两个图片不断的轮换,这个效果都是烂大街了。而有一种效果就是那个选中的小圆点是随着viewpager的滑动而滑动有明显的动
2016-06-02 10:42:46
5457
原创 RecyclerView的使用(Android开发必备,替换掉ListView)
RecyclerView的使用(Android开发必备,替换掉ListView) 当有人看了你写的代码,说你现在还在使用ListView?是不是感觉快跟不上时代了啊!不错,今天就带给大家一个ListView的最新升级控件RecyclerView,Android 5.0推出的新控件,不过它在support-v7包,可以往下兼容,当你学会了RecyclerView之后,发现了它
2016-05-31 22:14:33
8066
7
原创 EventBus的使用(基于EventBus3.0,开发必备)
EventBus3的使用(基于EventBus3.0事件总线,开发必备) 很久没有写博客了,之前工作太忙了,好了,这次给大家带来Android开发中使用非常普遍,非常重要的开源框架EventBus(别名:事件总线);这是一个github上面非常出名的开源项目,地址:点击打开链接查看EventBus 下面是官方介绍,这里我先截个图,然后详解
2016-05-29 23:19:15
5592
4
原创 android生成随机汉字
生成随机汉字 最近在项目中用到了一个功能,就是要生成随机汉字,想到很多人使用的很少,但是要用的时候确实又不知道从何入手,那么今天我将把这段代码分享出来,供大家参考学习,可以用作工具类,供及时之需;/** * 生成随机汉子 * @return */ private char getRandomChar() { Strin
2016-05-15 15:09:51
3999
原创 Android studio怎样添加assets文件
今天要在项目中使用原始音频文件,,在as中创建的项目并不会自动新建assets目录。然后想在android studio里面添加assets文件,但是在res文件下建不了,后来查看了下android文件机构发现 创建assets的目录为/src/main/assets如下图所示:
2016-05-15 14:05:20
1602
原创 Android开发6.0出现java.lang.UnsatisfiedLinkError...xxx.so has text relocations
有人反馈说app在6.0上面等不进去,点击就会出错,后来我用了一台android6.0的系统手机测试,发现出现了java.lang.UnsatisfiedLinkError...xxx.so has text relocations,后来经过百度研究发现,这个xxx.so文件使用了较低版本的SDK,我的 targetSdkVersion为23,然后把23改为22 问题就解决。如果还不行再继续把ta
2016-04-26 15:16:35
4122
原创 学习Android从0开始之ActionBar(活动条)之提高篇
学习Android从0开始之ActionBar(活动条)之提高篇 今天为大家带来actionbar的提高篇,有些时候一个列表,比如下载列表,歌曲或视频列表,这时候你想多选,这个时候可以使用actionBar来进行操作。有两种方式来进行操作: 使用上下文动作 和 ActionMode; 1、使用上下文来创建动作: 使用PopuMenu作为一个
2016-04-21 21:05:24
867
原创 学习Android从0开始之ActionBar(活动条)
ActionBar 简介:ActionBar,又称:活动 条,是Android3.0的重要更新,ActionBar位于传统标题栏的位置,就是屏幕顶部,处于状态栏下面。它可以显示应用程序的图标和当前activity的名称,它的右边部分为活动项,就是提供了一些可以点击的图标,供快捷操作。它的作用主要是以下几点: 1、显示选项菜单的菜单项,就是右边部分的菜单
2016-04-12 22:19:37
1657
原创 怎样解决Android studio中文乱码问题
怎样解决Android studio中文乱码问题在项目中看到有些时候中文会出现乱码问题,查了原因是因为文件的编码为GBK,而我们编码为GBK。我们要为编译器使用的编码还需要单独设置,否则 gradle 默认使用 utf-8 的编码和文件的实际编码不一致,就会导致程序运行的时候显示乱码。gradle 配置编码在 build.gradle 脚本文件中配置。添加上下面配置就行。andro
2016-03-31 12:09:01
1179
原创 自定义Dialog的详细步骤(实现自定义样式一般原理)
自定义Dialog的详细步骤(实现自定义样式一般原理) 现在很多App的提示对话框都非常有个性,然而你还用系统的对话框样式,是不是觉得很落后呢,今天我就给大家讲讲怎样自定义自己的Dialog,学会了之后,你就会根据自家app的主题,设计出相应的Dialog的风格。 好了接下来我就以一个简单风格的自定义Dialog来讲讲自定义dialog的一般步骤和原理。
2016-03-22 22:12:57
38089
16
原创 google官方的下拉刷新+自定义上拉加载更多
google官方的下拉刷新+自定义上拉加载更多 现在很多app都是使用的自定义的下拉刷新上拉加载更多,然而google官方为我们提供了下拉刷新操作,我在之前的博客中有撰文针对 自定义下拉刷新操作并提供源码下载 传送门 自定义下拉刷新及上拉加载更多 google官方的下拉刷新 传送门 google官方的下拉刷新组件的详细介绍及示例下载google
2016-03-21 19:50:31
8469
1
原创 Gson的详细使用(android必备,快速提高开发效率)
Gson的详细使用(android必备,快速提高开发效率) 接下来我要强烈给大家推荐一个google官方推荐使用的json解析库Gson。掌握好它之后,在以后的开发中就会减少非常多的代码,使用起来非常的方便。 概述: Gson是一个Java库,它不仅可以把Java对象转化为Json格式,它也能将一段Json格式的字符串转
2016-03-21 14:34:30
21022
4
原创 Android开发通用的工具类
Android开发通用的工具类 在开发中有些代码都是重复性的,如果能把这些代码集中的分类提取出来(比如网络连接、数据保存等),然后再以后写带码中,直接把这些代码复制过来,然后在要使用的地方使用简单的一句话来使用,这样大大的提高了工作效率,这样样的代码大家都把它称为 工具类。下面是一些比较好,而且整理好的工具类,大家可以下载下来,以后要用的时候直接拿到项目中就可以用了。
2016-03-18 16:22:48
1972
原创 view的执行过程,各种方法的调用先后顺序
view的执行过程,各种方法的调用先后顺序这里只是测试各个方法的执行流程,有些时候就是这些小基础是非常重要的,下了测试代码如下:package com.world.hello.viewpagerindictor.view;import android.content.Context;import android.content.res.Configuration;import
2016-03-18 11:12:18
5978
4
转载 android view构造函数研究
上周遇到了SurfaceView的constructor的问题,周末决定略微细致地研究一下这个令人发指的玩意。 SurfaceView是View的子类,与View一样有三个constructor:1 public void CustomView(Context context) {}2 public void CustomView(Context context,
2016-03-18 10:21:48
796
原创 获取Android当前网络类型(2g、3g、4g、wifi)以及手机型号、版本号
获取Android手机型号、版本号以及手机当前网络类型(2g、3g、4g、wifi) 获取手机型号: android.os.Build.MODEL 获取手机的SDK版本号:android.os.Build.VERSION.SDK 获取手机当前网络类型代码如下:这是一个工具类,大家可以保存下来以后方便使用。 package
2016-03-17 10:40:06
9809
原创 使用旋转动画和帧动画实现自定义ProgressDialog
使用旋转动画和帧动画实现自定义ProgressDialog 现在很多App在等陆或者在一些activity页面跳转的时候,使用ProgressDialog来实现等待加载数据的。然而使用系统的样式是非常没有自身app的特色的,所以这里教大家两种方法来自定义ProgressDialog,这两种方式就是:旋转动画 和 帧动画;源码放在最下面供大家下载 使用旋转动
2016-03-16 22:54:33
5717
4
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人