基础知识
文章平均质量分 50
AndyYuan317
种一颗大树最好的时候是十年前,其次是现在!
展开
-
Dialog实现底部评论弹窗效果
在开发中,经常会遇到一个界面中需求底部弹窗,输入评论后发送的需求。在实际操作中很多初学者或者中级开发人员都会出现选择PopUpWindow这个控件来可定制化开发,这个时候辛辛苦苦开发完成后会发现几个问题:1:一个界面中使用PopUpWindow来实现起来比较复杂,会设置各种InputMode,Location等各种属性。2:当PopUpWindow中包含有EditText的时候大坑就来了,这个时候你会发现EditText与屏幕中软键盘的显示适配问题(软键盘会遮挡该弹窗一部分)3:当你解决上面原创 2021-04-22 17:11:32 · 675 阅读 · 0 评论 -
Android倒计时实现天,时,分,秒
有的界面需要使用倒计时功能,这里写的天,小时,分钟,秒等来倒计时,界面截图如下:主界面代码如下:public class MainActivity2 extends AppCompatActivity { private RelativeLayout countDown; // 倒计时 private TextView mDays_Tv, mHours_Tv, mMinutes_Tv, mSeconds_Tv; private long mDay = 23;原创 2020-11-09 13:58:23 · 1179 阅读 · 2 评论 -
Android图片缓存显示框架实现
Android开发中有时候需要我们自己实现一个图片显示的功能,要求能够根据图片URL来从网络上获取图片,如果该图片已经再内存中则直接显示,否则在SD卡中查找,如果SD卡中没有最后尝试从网络中下载,如果下载成功后就保存到sd卡中,下次就不需要再次下载了。这里实现了一个图片加载实现类,项目中需要可以直接使用方便我们的日后开发。异步加载框架如下:/** * 一个拥有图片缓存能力的图片...原创 2019-12-23 14:07:53 · 533 阅读 · 0 评论 -
Android原生和MUI(也适合H5与原生交互)交互
上篇文章中讲述了Android原生怎么集成MUI框架的(Android原生集成MUI框架进行混合开发),这篇文章接上篇文章来继续讲解在Android集成了MUI(或者H5)后进行原生与H5之间的通讯功能,从而实现其交互功能(项目Demo如下,有需要的可以下载查看):1在mui中新建通讯类插件nativeManager.js,代码如下:/** * 原生平台操作管理器 */var ...原创 2019-11-08 16:50:39 · 1773 阅读 · 3 评论 -
Android中的Mvvm设计模式这一篇文章就够了
1.DataBinding介绍 2015年谷歌I/O大会上介绍了一个框架DataBinding,DataBinding是一个数据绑定框架,以前我们在Activity里写很多的findViewById,现在如果我们使用DataBinding,就可以抛弃findViewById。DataBinding主要解决了两个问题:- 需要多次使用findViewById,损害了应用性能且令人厌...原创 2019-04-16 15:30:44 · 913 阅读 · 1 评论 -
Android性能优化基本讲解
Android性能优化的目标 在网上也看到过很多相关的文章,他们基本总结为:快,稳,省,小,描述的很准确.如下图 ...原创 2018-08-30 09:45:18 · 271 阅读 · 0 评论 -
Volatile详解
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解...转载 2018-08-23 15:03:48 · 260 阅读 · 0 评论 -
Android开发高级进阶之Android开发艺术探索笔记重要知识点
本书是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点。本书从三个方面来组织内容。介绍Android开发者不容易掌握的一些知识点 结合Android源代码和应用层开发过程,融会贯通,介绍一些比较深入的知识点 介绍一些核心技术和Android的性能优化思。1 Activity的生命周期和启动模式1.1 Activity的生命周期全面...转载 2018-07-06 09:53:25 · 5812 阅读 · 0 评论 -
Git使用教程,最简单,详细的使用教程
预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料)一:Git是什么?Git是目前世界上最先进的分布式版本控制系统。工作原理 / 流程:Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库二:SVN与Git的最主要的区别?SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,...转载 2020-04-10 15:54:32 · 204 阅读 · 0 评论 -
关于compile,api和implementation的区别
在Android开发中使用AndroidStudio开发的时候是使用Gradle来构建我们的Android项目的,其中app目录下有个build.gradle文件,在dependencies {...}的闭包中有一些我们引用的第三方maven的远程依赖库,以前我们都是这样依赖的:compile 'com.android.support:appcompat-v7:26.1.0'然后sy...原创 2020-01-17 14:58:51 · 991 阅读 · 0 评论 -
AndroidStudio布局文件(xml文件)不能预览问题解决
AndroidStudio升级后有时候会出现项目中的xml文件不能预览,点击预览显示空白界面。解决方案很简单:1:找到AndroidManifest.xml文件中的application节点下的android:theme="@style/AppTheme"如下:2:点击进去后在AppTheme的parent值中添加Base,如下:3:再次点击XML布局文件就可以显示了。...原创 2020-01-07 09:59:03 · 5041 阅读 · 0 评论 -
int和Integer的比较总结
1.Integer与new Integer()不会相等,因为他们在做比较的时候,不会经历拆箱过程,Integer的引用指向栈,而new Integer()指向堆,他们的内存地址不一样,所以如果两者比较的话为false。2.两个都是非new出来的Integer,如果数在-128到127之间,则是true,否则为false,java在编译Integer i2 = 128的时候,被翻译成-&...原创 2019-05-06 09:44:23 · 265 阅读 · 0 评论 -
Android中跳转到系统设置各个界面的方法
在项目开发的过程中遇到一个需要跳转到系统APN界面的需求,查阅网上方法这里对跳转系统设置的方法做一个总结:有时候,我们在开发app时,会有跳转到系统设置界面的需求。例如:检查到网络连接错误,提示用户跳转到网络设置界面去设置网络连接 等等。 查阅资料,就把这些方法,汇总整理一下,方法以后查阅。希望对大家有所帮助。1. ACTION_ACCESSIBILITY_SETTINGS : ...原创 2019-02-18 17:05:13 · 3634 阅读 · 3 评论 -
Android Studio快捷键
Alt+回车 导入包,自动修正 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) Ctrl+E或者Alt+Shift+C 最近更改的代码 Ctrl+R 替换文本 Ctrl+F 查找文本 Ctrl+Shift+Space 自动补全代码...转载 2018-12-13 09:54:33 · 150 阅读 · 0 评论 -
java.lang.IllegalArgumentException: pointerIndex out of range pointerIndex=-1 pointerCount=1
在进行图片放大缩小的时候,图片缩小出现这个异常,查询了一下发现解决方案 java.lang.IllegalArgumentException: pointerIndex out of range pointerIndex=-1 pointerCount=1 at android.view.MotionEvent.nativeGetAxisValue(Native Method) ...原创 2018-08-31 10:47:36 · 1872 阅读 · 0 评论 -
Android中加载Text类型的HTML
如果我们从服务器上解析出来的数据是文本类型的HTML,需要我们解析的时候使用WebView就可以了步骤如下:1:获得格式如下: "content" : "<!DOCTYPE html><html>\n <head>\n <meta charset=\"utf-8\" \/>\n <meta name=\&quo原创 2018-08-07 16:45:03 · 898 阅读 · 0 评论 -
Android中获取时间戳及时间戳的转换
//获取当前时间戳long timeStamp = System.currentTimeMillis();String time = stampToDate(timeStamp);Log.d("xxxxx", time);//获取当前时间Calendar c = Calendar.getInstance();//可以对每个时间域单独修改int year = c.get(Calen...原创 2018-08-02 17:14:54 · 5874 阅读 · 0 评论 -
Android中使用相机和相册获取照片,模仿朋友圈发说说
话不多说,直接上图,如图:这个功能相信很多人都会用到,下面来一步一步的设置这个功能。1:首先布局我们的主界面,这里我使用activity_edit_diary.xml文件来当布局文件; 文件内容如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://s...原创 2018-07-28 16:30:38 · 1905 阅读 · 12 评论