![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android其它
文章平均质量分 91
ailinghao
移动端开发:iOS、Android、flutter
展开
-
Android中Activity的android:windowSoftInputMode属性
windowSoftInputMode属性主要是用来设置窗口软键盘的交互模式的,这个属性会有两个影响:1)当有焦点产生时,软键盘是隐藏还是显示。2)是否减少活动主窗口大小以便腾出空间放软键盘。这个属性一共有9个值,分别是:stateUnspecified、stateUnchanged、stateHidden、stateAlwaysHidden、stateVisible、stateAlwaysVisible、adjustUnspecified、adjustResize、adjustPan。1、转载 2020-11-18 14:27:32 · 252 阅读 · 0 评论 -
DecimalFormat 实现保留小数点位数及四舍五入
DecimalFormat decimalFormat = new DecimalFormat("###.###"); decimalFormat.setRoundingMode(RoundingMode.DOWN); String format = decimalFormat.format(new BigDecimal("1112.4578694566")); String format2 = decimalFormat.format(new BigD..原创 2020-08-04 18:10:12 · 1979 阅读 · 1 评论 -
MPAndroidChart使用详解
本文讲述对MPAndroidChart的使用,大部分是从其文档中摘录过来的。版本3.0.2一、MPAndroidChart概述MPAndroidChart 是一款专门用于Android绘制图表的库,相当强大,当然也有IOS的版本。GitHub上地址:Git-MPAndroidChart 。其特点如下:支持8中不同图表类型支持轴上的缩放可拖动、平移可定制轴可突出选中的值(瞄准点及弹出pop)定制图例动画显示其他下面来详细介绍其使用,涉及到的MPAndroidChart名称都用MP转载 2020-06-17 10:58:00 · 19844 阅读 · 5 评论 -
android项目迁移到androidx
1.Android Studio自带可以把项目升级为Androidx2. 在gradle.properties文件添加android.useAndroidX=trueandroid.enableJetifier=true3.修改java类引用修改前import android.app.FragmentManager; 修改后 androidx.fragment.app.FragmentManagerandroid.support.v7.widget.Toolbar ...原创 2020-05-28 10:33:37 · 2232 阅读 · 0 评论 -
Android 冷启动解决启动白屏
前言关于 splash 页面相信每个Android开发者都是非常熟悉的,而且很多人也遇到过需要在splash加个广告图片,然后延迟3秒在进入主页面,splash 应该只是一个启动页面,不应该放广告,但是那又能怎么样呢?又敌不过产品经理。大多数情况下都会碰到启动白屏和黑屏的情况,那么本文将探讨几种我在开发中用到的几种解决方案。原理解析冷启动什么是冷启动Android中的冷启动,...转载 2018-09-18 09:26:15 · 705 阅读 · 0 评论 -
Android中ViewPager的使用总结
Viewpager,视图翻页工具,提供了多页面切换的效果。Android 3.0后引入的一个UI控件,位于v4包中。低版本使用需要导入v4包,但是现在我们开发的APP一般不再兼容3.0及以下的系统版本,另外现在大多数使用Android studio进行开发,默认导入v7包,v7包含了v4,所以不用导包,越来越方便了。 ViewPager的基本用法:可以在ViewPager中加载一个ImageV...原创 2018-09-29 10:32:24 · 12618 阅读 · 2 评论 -
Android中如何减少if else 嵌套
写在前面不知大家有没遇到过像“横放着的金字塔”一样的if else嵌套:if (true) { if (true) { if (true) { if (true) { if (true) { if (true) { ...转载 2018-11-13 09:47:58 · 3569 阅读 · 1 评论 -
Android中的13种Drawable小结
Android中给我们提供了多达13种的 Drawable,本节我们就来一个个撸一遍!Drawable资源使用注意事项Drawable分为两种: 一种是我们普通的图片资源,在Android Studio中我们一般放到res/mipmap目录下, 和以前的Eclipse不一样哦!另外我们如果把工程切换成Android项目模式,我们直接 往mipmap目录下丢图片即可,AS会自动分h...转载 2018-11-08 17:39:49 · 951 阅读 · 0 评论 -
Install Apk 兼容性问题
问题描述现象代码执行安装Apk,出现系统弹框解析错误,解析包时出现错误场景在华为P20 Android 8.0 手机上,下载Apk并使用通知栏进度条显示,开启应用锁屏通知权限,下载过程在锁屏情况下进行,下载完成后自动执行安装Apk,在解锁后出现系统弹框,解析包出现错误。解决之前安装Apk的方法首先在AndroidManifest中声明fileProvider <...转载 2018-11-08 18:10:33 · 521 阅读 · 0 评论 -
Android中保存普通图片和gif图片到手机上
//保存gif图片 new Thread(new Runnable() { @Override public void run() { try { Utils.saveGifFile(origUrl); ...原创 2018-11-15 16:35:19 · 3104 阅读 · 0 评论 -
Android中加载GIF图片及遇到的问题
package com.qinqu.view;import android.annotation.SuppressLint;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Movie;...原创 2018-11-15 11:25:08 · 1360 阅读 · 1 评论 -
Android人脸识别app——基于Face++,MVP+Retofit+RxJava+Dagger高度解耦
前言 最近公司项目比较空,花了点时间写了个人脸识别的app,可以查看你的性别、年龄、颜值、情绪等信息,利用的是 Face++ 的人脸识别API。本项目采用了 MVP 的架构,使用了 Retrofit、RxJava、Dagger、EventBus 等框架进行开发和解耦,利用 MaterialDesign 进行UI上的布局设计。 主要的功能就是拍照,然后将照片传至 Face++ 服务器,进行...转载 2019-01-10 13:53:43 · 251 阅读 · 0 评论 -
Android中用户提意见的功能的实现
在一般的 apk 中,我们都会设置一个让用户提意见的功能,常见的做法,就是申请一个通用邮箱,让内容发送过来就好了。而这里的邮箱发送,属于第三方邮件发送,即本来你申请的是 163 的,然后却用 QQ 邮箱去登录,那肯定是不行的,所以需要申请授权码,申请之后,就用账号加授权码发送即可。所以,这里添加一个 ZMailManager 的工具类。关联allprojects { rep...转载 2019-01-12 16:26:07 · 196 阅读 · 0 评论 -
股票图,K线图,蜡烛图,高仿雪球股票
股票图,K线图,蜡烛图,高仿雪球股票,教你一步步实现股票图项目地址讲K线图之前,先来一个引言.作为Android开发者需要立即提升的三项技能:分别是:UI,网络,线程,而UI又分:布局,绘制,以及触摸事件的反馈.其实UI确实只有这么几个最主要的东西,但是很多人却没能搞明白.UI的这三方面,说容易也容易,说难也难.有同学当时也问到:怎么样才能算是掌握了这三个方面呢?凯哥当...转载 2019-01-15 15:39:35 · 1840 阅读 · 7 评论 -
AndroidX是什么
Android技术迭代更新很快,各种新出的技术和名词也是层出不穷。不知从什么时候开始,总是会时不时听到AndroidX这个名词,这难道又是什么新出技术吗?相信有很多朋友也会存在这样的疑惑,那么今天我就来写一篇科普文章,向大家介绍AndroidX的前世今生。Android系统在刚刚面世的时候,可能连它的设计者也没有想到它会如此成功,因此也不可能在一开始的时候就将它的API考虑的非常周全。随着A...转载 2019-09-06 17:57:32 · 702 阅读 · 0 评论 -
Android中关于button或TextView控件英文字符显示的大小写问题
<Button android:id="@+id/common_dl_btn3" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_margin="10dp" android:layout_weight="1" android:text..原创 2018-09-05 16:56:46 · 662 阅读 · 1 评论 -
在Android中调用浏览器打开网页方式
在安卓代码中我们有时需要调用浏览器来打开相应的网页,此时可以有以下几种实现方式: 一: 调用默认浏览器 1 2 3 4 5 Intent intent = new Intent(); //Intent intent = new Intent(Intent.ACTION_VIEW,uri); ...转载 2018-01-31 10:53:45 · 1567 阅读 · 0 评论 -
android颜色透明度换算详解
透明度透明度分为256阶(0-255),计算机上用16进制表示为(00-ff)。透明就是0阶,不透明就是255阶,如果50%透明就是127阶(256的一半当然是128,但因为是从0开始,所以实际上是127)。 透明度和不透明度是两个概念, 它们加起来是1,或者100%. ARGB 中的透明度alpha,表示的是不透明度。换算过程:256乘以相应的百分比转成十六进制将透明度...原创 2018-03-16 11:41:16 · 970 阅读 · 0 评论 -
Android中Activity的四种LaunchMode和Intent 的flag的使用
Activity一共有以下四种launchMode:1.standard2.singleTop3.singleTask4.singleInstance作用概述:规定是否新建activity,是否公用task(task:应用启动时,会创建一个对应的task。task主要负责对activity进行管理。)使用方法:我们可以在AndroidManifest.xml配置<ac...原创 2018-07-31 10:15:46 · 916 阅读 · 1 评论 -
Android中Context说明
ContextWrapper是上下文功能的封装类,而ContextImpl则是上下文功能的实现类 参考郭神写的太详细了Application 也理解了:https://blog.csdn.net/guolin_blog/article/details/47028975 ...原创 2018-07-27 19:48:08 · 128 阅读 · 0 评论 -
Android中的ImageView介绍及从网络/服务器加载点9图
1、设置图片(1)静态设置 <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:src="@drawable/abc_btn_check_material"/>1 2 3 4(2)...原创 2018-07-11 15:22:13 · 2319 阅读 · 0 评论 -
Android 中几种优雅的退出APP方式介绍
前言 最近由于项目的修改,项目由MainActivity按返回键一次退出修改为MainActivity中连续按两次返回键退出,顺便优化一下推出这里的代码。因此还是在网上搜索了一番,总结比较之后得出了有以下集中方式,优缺点都会提出来,有需要的老铁按需选择。 目录常见的有5中方式: 容器式 便捷式 广播式 进程式 Singl...转载 2018-07-10 09:28:26 · 3061 阅读 · 0 评论 -
Android线程池的使用及demo
一、为什么要使用线程池: 1、减少了创建线程的数量,提高了APP的性能 2、节省开销,防止并发线程过多,便于线程的管理二、线程池的分类(四类) newCachedThreadPool 缓存型线程池: 如果池中没有线程可用,它将创建 一个线程并添加到线程池中, 线程池中尚未使用的60秒线程 将会终止并从线程池中移出,因此, 对于长期保持足够的空...原创 2018-07-05 17:01:26 · 2138 阅读 · 0 评论 -
Android中如何加载大图片和长图片
我们在做开发的时候总是会不可避免的遇到加载图片的情况,当图片的尺寸小于ImageView的尺寸的时候,我们当然可以很happy的去直接加载展示。但是如果我们要加载的图片远远大于ImageView的大小,直接用ImageView去展示的话,就会带来不好的视觉效果,也会占用太多的内存和性能开销。甚至这张图片足够大到导致程序oom崩溃。这个时候我们就需要对图片进行特殊的处理了:一、图片压缩图片太...转载 2018-07-02 09:13:42 · 5949 阅读 · 0 评论 -
android中实现滑动标题栏颜色渐变
android中实现滑动标题栏颜色渐变(recycleview) demo地址: https://download.csdn.net/download/haoxuhong/10467101 android中实现滑动标题栏颜色渐变(scrollview):实现滚动scrollview来改变标题栏的颜色demo地址: https://download.csdn.net/d...原创 2018-06-08 14:24:55 · 1238 阅读 · 0 评论 -
android中实现数字被划掉效果
tv.getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG ); //下划线tv.getPaint().setAntiAlias(true);//抗锯齿tv.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG); //中划线tv.getPaint().setFlags(Paint. STRIKE_THRU_TEX...原创 2018-05-22 18:00:31 · 1471 阅读 · 0 评论 -
各 Android 平台版本支持的 API 级别
官方网站上复制的,了解最新版本: https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels 平台版本 API 级别 VERSION_CODE 备注 Android 7.0 24 N 平台亮点 Android 6.0 2...原创 2018-05-15 18:38:37 · 479 阅读 · 0 评论 -
Android项目调试报错:android.view.InflateException: Binary XML file line #17:
详细信息android.view.InflateException: Binary XML file line #17: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference <view androi...原创 2018-04-27 17:09:51 · 1247 阅读 · 0 评论 -
android:screenOrientation的说明及旋转屏幕导致Activity被重建的解决办法
Activity在屏幕当中显示的方向。属性值可以是下表中列出的一个值:"unspecified" 默认值,由系统来选择方向。它的使用策略,以及由于选择时特定的上下文环境,可能会因为设备的差异而不同。 "user" 使用用户当前首选的方向。 "behind" 使用Activity堆栈中与该Activity之下的那个Activity的相同的方向。 "landscape...原创 2018-04-27 13:45:57 · 4500 阅读 · 0 评论 -
HTTP 状态消息
http://www.w3school.com.cn/tags/html_ref_httpmessages.asp原创 2018-04-25 16:54:25 · 98 阅读 · 0 评论 -
Android 代码中如何绘制虚线
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@colo转载 2018-04-20 09:01:19 · 452 阅读 · 0 评论 -
fragment介绍
android.app.Fragment:①兼容的最低版本是android:minSdkVersion="11"因此你的应用不能兼容3.0以下的应用②可以使用标签的,这点很重要,如果是用android.support.v4.app.Fragment的话,是不能是用标签的,会抛出android.view.InflateException: Binary XML file line #7: Err...原创 2018-04-19 09:16:00 · 1961 阅读 · 0 评论 -
Android中string转换成int
int -> Stringint i=12345; String s=”“; 第一种方法:s=i+”“; 第二种方法:s=String.valueOf(i); 这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢? 第一种方法:s=i+”“; //会产生两个String对象 第二种方法:s=String.valueOf(i); //直接使用String类的...原创 2018-08-14 11:44:28 · 31003 阅读 · 0 评论