Android
dong_junshuai
不积跬步何以至千里,三尺寒冰又岂是一日之寒!!
展开
-
Android stutio导入项目卡死
喜欢开源的小伙伴有没有发现,当我们好不容易找到了自己喜欢的,或者需要的源码的时候,要用android stutio打开的时候,却发现卡在一个界面一直打不开(如图),今天我们就来解决一下,这个问题,让开源这条不归路,越走越远。。。其实很简单,只需要修改几个东西:第一步:新建一个空项目;第二步:替换代码:1.查看下载的项目是不是有 “.idea” 这个文件夹(没什么原创 2016-11-03 14:24:16 · 411 阅读 · 0 评论 -
解决Android cannot resolve symbol问题
一直在开发,好久没有写博客了,最近一段时间准备把遇到的问题进行总结,一大波干货即将到来。今天从仓库check下项目,发现整个项目全部变红,clean, rebuild,make project,各种方法全试了,最终还是没有解决。在百度及google的过程中发现,最多的是使用,“File” -> “Invalidate Caches / Restart”,清空 cache 并且重启。”这种方原创 2018-01-10 16:52:10 · 17234 阅读 · 6 评论 -
解决项目一直卡顿在下载Gradle页面
今天在重做系统后重新安装AS后,新建项目居然一直在下载Gradle,于是想要搞明白到底在下载什么东西,最终发现下载的东西在“C:\Users\name\.gradle\wrapper\dists\gradle-*.*-all”,其实里面只有2个文件,一个以“.lck”与一个".part"结尾的文件,由于墙的原因,我们的下载速度近于龟速,所以试想能不能先下载到本地了,然后直接使用呢?实验一番原创 2017-11-09 10:09:50 · 3540 阅读 · 0 评论 -
No resource identifier found for attribute 'roundIcon' in package
问题描述:为了看android源码,compileSdkVersion从26降到24,然后reBulid项目的时候报错,报错信息如下:Error:(11) No resource identifier found for attribute 'roundIcon' in package解决方法:删除AndroidManifest.xml里的 android:roundIco原创 2017-09-20 15:29:24 · 468 阅读 · 0 评论 -
Android多线程编程
总认为这样的标题比较大,涉及面也比较广,鉴于自己的认知不够深入,所以没有写过类似的文章,今天谈一谈Android的多线程编程。一、Android是只有一个主线程的程序。我们知道,Android只有一个UI线程(主线程),每次更新UI都需要在主线程中,为了防止页面卡顿,我们需要对一些耗时操作全部放在子线程中,而由于线程开启后的不可控性,我们又需要线程池对线程的管理,这些不是本文的重点,就先不说原创 2017-07-31 15:37:24 · 283 阅读 · 0 评论 -
Android使用友盟进行分渠道打包和统计
由于众所周知的原因,国内上不了Google,从而也就打不开google play了,由此出现了众多的市场,那么打包就成了一项繁琐的问题,今天我们就来研究一下如何利用友盟进行快捷方便的多渠道打包和统计的功能。先上效果图:1.既然使用第三方,那么肯定要添加依赖。 compile 'com.umeng.analytics:analytics:latest.integration'原创 2017-06-02 10:47:37 · 6795 阅读 · 2 评论 -
Android调用相机拿到图片
我们平时会调用相机拿到图片,但是,调用相机容易,当我们拿到图片时,拿到的往往是缩略图,那么,当我们用到高清原图的时候又该怎么办呢?1.布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tool原创 2017-01-10 15:45:50 · 395 阅读 · 0 评论 -
WebView与JS的简单交互
如今App里嵌套JS界面已经很普遍,是时候来了解JS与Android源代码的交互了。1.Html,现在main下新建assets包,然后把html文件放在里面: function javacalljs(){ document.getElementById("content").innerHTML = "JA原创 2016-12-20 13:42:55 · 308 阅读 · 0 评论 -
EditText禁止输入空格和回车
EditText经常会禁止输入一些字符,例如,不允许输入空格,不允许回车。 1.不允许输入空格,这里我们采用对EditText添加输入监听://监听输入框禁止输入空格editText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence...原创 2018-02-24 15:20:12 · 1283 阅读 · 0 评论 -
Android Studio Bookmark
今天开发项目时,不知道碰到了上面键,导致代码的左侧出现了一个“9”的标志,把鼠标放到上面,显示“Bookmark 9”,经过搜索才知道是Android Studio带的标签功能。 用法:Ctrl + F11给某行代码添加标签,SHIFT + F11可以快速预览所有标签,并且跳转到指定标签。 用途:一个类或方法需要多次反复查看的时候可以使用这样的方法进行快速切换,快速查看。...原创 2018-04-18 14:42:07 · 2221 阅读 · 0 评论 -
Android Stuido部分快捷键失灵
问题重现今天升级了Android Studio,插件也进行重新安装。装完插件之后进行开发,突然发现部分快捷键(Ctrl + F, Alt + Insert等)失灵了。于是开始各种找解决办法,毕竟没有快捷键的IDE实在不方便。误区一以为是和某某软件的快捷键冲突,于是关闭几乎可以关闭的所有软件,发现还是不行。误区二以为是和Windons系统的快捷键冲突,于是禁用掉系统的快捷键,发现还是不行。...原创 2019-07-27 11:49:35 · 1612 阅读 · 0 评论 -
IntelliJ IDEA开发Android Studio的MVP插件
应用场景如今我们开发通常采用MVP模式,在逻辑清晰,分工明确的好处下,也带来了一些弊端,每次创建一个Activity,都需要创建2~3个类或者接口来进行分工,既然是这样,每次都需要重复的建相同类型(Presenter,Contract)的类,何不自己开发一个这样的插件呢。开始开发步骤一、工具准备及项目创建开发插件使用的工具为IntelliJ IDEA。安装完成新建工程注意箭头指向的...原创 2019-05-29 16:39:58 · 1549 阅读 · 0 评论 -
Scrollview嵌套WebView加载成功但是显示空白
问题描述Google官方不建议ScrollView+WebView的嵌套使用,但是为了需求实现,实在是没有找到其他的可替代方案,只能是采用此方法了。因为采用此方案,相关的问题也随之而来,其中最大的问题就是,WebView内容成功加载完成之后,内容显示一片空白,无法正常显示内容原因两者嵌套,ScrollView和WebView互相抢焦点,导致WebView宽高为0,从而导致显示空白。解决办法...原创 2019-05-22 11:04:58 · 2119 阅读 · 1 评论 -
Fragment回退栈简述
简述Fragment与Activity同样存在栈,只是我们平时很少使用到,下面我们将简述Fragment的回退栈及其使用方法。效果图原理Activity有任务栈,用户通过startActivity将Activity加入栈,点击返回按钮将Activity出栈。Fragment也有类似的栈,称为回退栈(Back Stack),回退栈由FragmentManager管理的。如果没有加入回退...原创 2019-05-22 10:34:06 · 768 阅读 · 0 评论 -
Android Studio装插件出错
Android Studio进行安装插件时,有时会出现以下问题: 原因是某些插件的下载地址默认是非安全的导致了下载出错。解决方法如下: 找到设置→System Settings→Updates→Use secure connection(把该选项改为不勾选状态)。 ...原创 2019-01-29 09:57:47 · 754 阅读 · 0 评论 -
Androdi设置透明度及透明度对应的色值
一、xml中设置透明度。通过 android:alpha="x"来设置透明。<TextView android:layout_width="match_parent" android:layout_height="match_parent" android:b...原创 2018-12-12 14:21:56 · 561 阅读 · 0 评论 -
Android获取安装包32位签名
获取Android安装包签名有2种方法。 一、代码中获取,但是需要知道安装包的包名。代码如下:PackageManager manager = getPackageManager(); /** 通过包管理器获得指定包名包含签名的包信息 **/ PackageInfo packageInfo = null; try { pac...原创 2018-04-27 14:52:44 · 7990 阅读 · 5 评论 -
Execution failed for task ':app:preDebugAndroidTestBuild
问题描述: 今天新建了一个项目直接就出现了问题,问题贴在下面:Error:Execution failed for task ‘:app:preDebugAndroidTestBuild’. Conflict with dependency ‘com.android.support:support-annotations’ in project ‘:app’. Resolved versi...原创 2018-05-02 10:30:17 · 232 阅读 · 0 评论 -
Android图片选择器(选择多张图片)
好久没有写过文章了,最近一直在忙公司桌面维护的一些事情,前几天接到一个写一个仿微信选择多张图片的任务,今天来总结一下。发现一个非常好用的图片选择库,下面来说一下这个库的用法:1.通过Gradle抓取和导入Jar包(Glide和RecyclerView,文末有连接) dependencies { compile 'com.yancy.imageselector:imageselector:1原创 2016-11-18 09:19:11 · 5324 阅读 · 2 评论 -
Banner实现广告无限轮播
前些天写了一篇广告轮播的文章,代码比较多, 今天来研究一个封装完整的广告轮播库---Banner!!1.既然是第三方库,首先需要加载库:appcompile 'com.youth.banner:banner:1.4.2'2.导入Jar包,这里用的glide,Google推荐,亲儿子。glide下载3.布局文件:<RelativeLayout xmlns:android原创 2016-11-23 10:56:37 · 2963 阅读 · 9 评论 -
android两种方式实现圆形图片
在项目中,我们经常会用到圆形图片,但是android本身又没有提供,那我只能我们自己来完成。 第一种方式,自定义CircleImageView:public class CircleImageView extends ImageView { private static final ScaleType SCALE_TYPE = ScaleType.CENTER_CRO原创 2016-11-24 10:46:39 · 615 阅读 · 0 评论 -
自定义透明的Dialog
我们经常会用到透明的Dialog,但是系统又没有给设置透明度的方法,那么,我们就自定义一个Dialog来实现这种效果。/** * 自定义透明的dialog */public class CustomDialog extends Dialog{ private String content; public CustomDialog(Context context, Str原创 2016-12-06 15:20:20 · 310 阅读 · 0 评论 -
Android两个App跳转
经常看到从一个App跳转到另一个App,而且还可以把值带过去,开始感觉很厉害,仔细研究了一下,其实就是一个简单的Intent跳转,而且传值方式也和我们平时Activity跳转的方式一样。下面看代码:在Test1中当点击跳转按钮:Intent intent = getPackageManager().getLaunchIntentForPackage("你要跳转到App的包名");原创 2016-11-22 17:41:37 · 1922 阅读 · 0 评论 -
Android点击2次退出
通常会看到App连续点击2次返回键就退出,那么我们就来实现一下,其实很简单,也就几句代码,只需要重写onBackPressed(),代码如下: @Override public void onBackPressed() { long secondBackTime = System.currentTimeMillis(); if (secondBackT原创 2016-11-18 13:46:51 · 373 阅读 · 0 评论 -
广告轮播
android中我们经常会用到广告轮播,但是每次都要自己写不免麻烦,经过多天在网上搜索,终于找到一个封装较好的广告轮播库,下面我们就来了解并使用这个库。1.导入glide Jar包。 点击下载glide 2.自定义布局CustomLayout:public class CustomLayout extends FrameLayout { private float rat原创 2016-11-21 11:02:23 · 557 阅读 · 0 评论 -
解决ScollView嵌套ListView只显示一条的问题
ListView只显示一条,我们只需要重新计算ListView的高度,下面贴出工具类:public void fixListViewHeight(ListView listView) { // 如果没有设置数据适配器,则ListView没有子项,返回。 ListAdapter listAdapter = listView.getAdapter();原创 2016-12-02 13:44:13 · 329 阅读 · 0 评论 -
RecyclerView的初级入门
现在好多大神都在推崇RecyclerView的好用,于是一试,只是按展示来说,他确实比GridView和ListView要方便的多。RecyclerView Jar包下载原创 2016-11-30 12:08:55 · 346 阅读 · 0 评论 -
带删除按钮的EditText
经常见到EditText的后面带着一个小的“x”,可以把EditText输入的内容清空,这是一个即使用又简单的功能,我们一起来重写一下EditText来实现这个功能:public class EdittextWithDel extends EditText { private final static String TAG = "EditTextWithDel"; privat原创 2016-11-29 11:15:45 · 308 阅读 · 0 评论 -
将图片剪裁为圆形
我们时常会用到圆形图片,那么,是对图片进行裁剪,还是自定义圆形的ImageView,如果没有特殊要求的话,我们肯定选择前者,原因很简单,因为简单!!直接上源码,就是这么粗暴任性~~~/** * 将图片剪裁为圆形 */ public static Bitmap createCircleImage(Bitmap source) { int length原创 2016-11-02 17:44:51 · 2356 阅读 · 0 评论 -
GifView的使用
是不是有的时候看到一些好玩的动态图,想要展示出来,却又找不到合适的控件呢?那么,GifView的Jar包正好解决了你的问题。第一步:下载Jar包,点击下载Jar包。第二步:将Jar导入项目,eclipse直接放入libs,android stutio放入lib中,然后Add一下,就可以在布局使用了;第三步:xml中的添加: <com.ant.liao.GifView原创 2016-11-04 14:53:25 · 511 阅读 · 0 评论 -
两种方式实现加载动画
我们在加载某些界面或者进行某项操作的时候往往需要做一个加载动画,我们就来总结一下这2种方法,通常我们会弹出一个diolog来展示这个动画从而实现美观的效果:实现Dialog: Dialog dialog = new Dialog(this); View view = LayoutInflater.from(this).inflate(R.layout.dialog_view,原创 2016-12-01 14:30:39 · 1151 阅读 · 0 评论 -
android点击查看大图(长按保存图片)
通常会看到点击ImageView弹出一个Dialog上面有一张大图,然后长按大图可以保存,这就好像成为了一个固定的流程,那么,我们就来实现这一系列的功能。1.xml文件,特别简单,只有一个ImageView:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tool原创 2016-12-22 17:03:00 · 10211 阅读 · 6 评论 -
Android根据日期自动修改Icon
一直很纳闷每次过节搞活动时,某宝,某东的图标都会改成的醒目,莫非他们会为了一个图标发布一个版本么?显然不会,那么是怎么做到的呢?1.AndroidManifest:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="visahall.cn.testchangeicon">原创 2016-12-22 15:12:07 · 1632 阅读 · 3 评论 -
Android前端判断敏感词汇
敏感词汇通常会在后台进行判断,但偶尔也会有在前端进行判断,其实很简单,就是对一个字符串中特定字符的替换。<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+i原创 2016-12-22 11:57:46 · 2102 阅读 · 0 评论 -
Glide的使用(google亲儿子)
图片的加载框架有很多,如ImageLoader,Picasso,Volley,当然各有优点,不过,我更喜欢谷歌的亲儿子---Glide。Glide Jar包下载1.简单使用:/** * this ---- context(上下文对象) * crossFade --- 淡入淡出动画,1000为设置的毫秒数,参数可以为空,默认300毫秒原创 2016-12-15 14:07:20 · 355 阅读 · 0 评论 -
自定义Toast及解决Toast的重复显示问题
我们时常会用到Toast,但是源生的Toast有时会满足不了我们的需求,这就需要我们自定义了。首先,来一个Toast工具类:public class MyToast { private Toast mToast; private TextView textView; public void showToast(Context context, String text原创 2016-12-08 11:47:09 · 788 阅读 · 0 评论 -
Android本地验证码验证
现在的验证码无非两类,一类为网络验证(包括短信验证,邮箱验证等),另一类则是本地生成验证码来验证,当然我们不需要做成12306那种惨无人道的的验证码,我们只要普通的验证码就行了。验证码的原理就是给你几个无序随机的字母或者数字组合为一个字符串,然后加入一些横向和颜色进行混淆,然后在你点击验证时进行验证。知道了原理那就好说了,无非是弄一个画布,然后随机生成随机数,然后把这些随机数画到画布上,在对画原创 2016-11-24 17:05:07 · 1435 阅读 · 0 评论 -
带全选的ExpandableListView
ExpandableListView相信大家都不陌生,每天都会看到好多次,别给我说你不用QQ,微信,那么问题来了,如何在ExpandableListView加上全选按钮呢?废话不多说,直接上代码:一:MainActivity:package visahall.cn.expandablelistcheckbox;import android.app.Activity;impor原创 2016-11-01 17:46:49 · 645 阅读 · 0 评论 -
Please select Android SDK
问题复现打开项目后发现尝试方法1.调整 Build Tools Version(对于我的项目无效)2.清除缓存并重启(对于我的项目无效)3.File–Sync Project with Gradle Files (对于我的项目无效)4.修改app.iml(生效,问题解决)找到-----orderEntry type=“jdk” jdkName=“Kotlin SDK” jd...原创 2019-08-01 11:56:23 · 337 阅读 · 0 评论