• Android判断手机是否联网及自动跳转功能(收藏版)

    Android判断手机是否联网及自动跳转功能(收藏版) android欢迎页自动跳转及手机网络检测,具体实现代码如下所示: 在1.2s后从欢迎页(welcome)跳转到登陆页(Login_Activity),并进行手机网络检测 package com.example.amusic.welcome; import android.content.Intent; import android.content.IntentFilter; import android.support.v7.app.AppComp

  • Android Selector 按下修改背景和文本颜色的实现代码

    Android Selector 按下修改背景和文本颜色的实现代码 1,selector 按下修改背景和文本颜色 [1]点击改变字体颜色 - android:state_pressed(按压状态) [2]selector状态选择器(bg_btn_two (存放 res - drawable)) 资源文件下,否则不起作用 [3] selector状态选择器(bg_btn_one (存放 res - color)) 资源文件下,否则不起作用 [3]android:state_pressed="tru

  • Android使用美团多渠道打包方案详解

    Android使用美团多渠道打包方案详解 Andorid渠道市场有多分散呢?分散到比Android碎片化还严重,你还在为多渠道打包而头疼吗?美团提供了速度快到白驹过隙的多渠道打包方案.说的有点夸张,对,虽然夸张,但是确实很快,不夸张不足以形容其快.废话不多说,先讲原理,再讲实践方法. 新旧打包方法原理对比讲解 传统方式 在AndroidManifest定义渠道的年代,多渠道打包无非以下两种方案: 方案一:完全的重新编译,即在代码重新编译打包之前,在AndroidManifest中修改渠道标示: 方案二:通

  • Android双重SurfaceView实现弹幕效果

    Android双重SurfaceView实现弹幕效果 本文实例为大家分享了Android双重SurfaceView实现弹幕效果的具体代码,供大家参考,具体内容如下 页面布局 首先是XML的layout布局,这里的总的父布局是一个FrameLayout用于贴上两个SurfaceView,一个用来播放视频,一个用来显示弹幕 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android

  • Android按钮美化样式的实现代码

    Android按钮美化样式的实现代码 话不多说,上运行效果图 在drawable文件夹下 新建button_drawable.xml <?xml version="1.0" encoding="utf-8" ?> <!--相当于做了一张圆角的图片,然后给button作为背景图片--> <shape xmlns:android="http://schemas.android.com/apk/res/android" a

  • Android实现视频弹幕功能

    Android实现视频弹幕功能 本文实例为大家分享了Android视频弹幕的具体代码,供大家参考,具体内容如下 效果图: 上图:代码随机生成的弹幕及弹幕输入栏 下图:绿色框的弹幕为用户手动添加发送的弹幕 1.准备工作 准备一个视频文件,将该视频文件放到res/raw目录下. 需要将视频设置为横屏播放,即往配置文件中添加android:screenOrientation="landscape": <activity android:name=".MainActivity&

  • Android10填坑适配指南(实际经验代码)

    Android10填坑适配指南(实际经验代码) 今天看到一篇好的文章,分享给大家,膜拜大佬. Android10填坑适配指南,包含实际经验代码,绝不照搬翻译文档 1.Region.Op相关异常:java.lang.IllegalArgumentException: Invalid Region.Op - only INTERSECT and DIFFERENCE are allowed 当 targetSdkVersion >= Build.VERSION_CODES.P 时调用 canvas.cl

  • Android简单实现弹幕效果

    Android简单实现弹幕效果 本文实例为大家分享了Android实现弹幕效果的具体代码,供大家参考,具体内容如下 首先分析一下,他是由三层布局来共同完成的,第一层视频布局,第二层字幕布局,第三层输入框布局,要想让这三个布局在同一页面上,必须用相对布局或帧布局. <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.andr

  • Kotlin中的对象表达式和对象声明的具体使用

    Kotlin中的对象表达式和对象声明的具体使用 Kotlin的对象表达式与Java中的匿名内部类的主要区别:匿名内部类只能指定一个父类型,但对象表达式可以指定0~N个肤类型. 一.对象表达式 对象表达式的语法格式如下: object [: 0~N个父类型]{ //对象表达式的类体部分 } 对象表达式还有如下规则: 对象表达式不能是抽象类,因为系统在创建对象表达式时会立即创建对象.因此不允许将对象表达式定义成抽象类. 对象表达式不能定义构造器.但对象表达式可以定义初始化块,可以通过初始化块来完成构造器需要完

  • 使用Flutter实现一个走马灯布局的示例代码

    使用Flutter实现一个走马灯布局的示例代码 走马灯是一种常见的效果,本文讲一下如何用 PageView 在 Flutter 里实现一个走马灯, 效果如下,当前页面的高度比其它页面高,切换页面的时候有一个高度变化的动画.实现这样的效果主要用到的是 PageView.builder 部件. 开发 创建首页 首先创建一个 IndexPage 部件,这个部件用来放 PageView ,因为需要使用 setState 方法更新 UI,所以它是 stateful 的. import 'package:fl

  • Android使用SoundPool实现播放音效

    Android使用SoundPool实现播放音效 如果在程序应用中(比如:游戏的音效等)需要播放密集.短促的音效,这时就使用SoundPool来播放音效,SoundPool使用音效池的概念来管理多个短促的音效,例如它可以开始就10个音效,以后在程序中按音效的ID进行播放. SoundPool主要用于播放一些较短的声音片段,与MediaPlayer相比,SoundPool的优势在 于CPU资源占用量低和反应延迟小.另外,SoundPool还支持自行设置声音的品质.音量.播放比率等参数. 一般使用SoundP

  • Android自定义View实现弹幕效果

    Android自定义View实现弹幕效果 在很多视频直播中都有弹幕功能,而安卓上没有简单好用的弹幕控件,本文介绍一个自定义弹幕view的demo. 效果图: 思路: 1.自定义Textitem类表示弹幕的信息 2.自定义view继承view,使用ArrayList保存每条Textitem 3.随机生成坐标点绘制每条TextItem,不断变换Text的横坐标实现弹幕的滚动 首先创建弹幕类,弹幕包括坐标,颜色,滚动速度,以及文字内容: public class Textitem { private Strin

  • flutter 中监听滑动事件

    flutter 中监听滑动事件 在移动端,各个平台或 UI 系统的原始指针事件模型基本都是一致,即:一次完整的事件分为三个阶段:手指按下.手指移动.和手指抬起,而更高级别的手势(如点击.双击.拖动等)都是基于这些原始事件的. Flutter 中可以使用 Listener widget 来监听原始触摸事件,它也是一个功能性 widget. Listener 的常见属性 属性 类型 说明 onPointerDown (PointerDownEvent event){} 手指按下时触发 onPointerMov

  • android自定义组件实现仪表计数盘

    android自定义组件实现仪表计数盘 前几天开发公司项目,有个地方要做一个分数的仪表盘,根据分数跑分,(设计的人估计是看到招商银行App的账号总览) 网上好像找不到类似的组件,那就只能自己开发啦.趁着空余时间,把组件进行了一些改进,并封装成依赖库,分享给大家 效果展示 一款颜色,文字弧度大小,仪表角度都可以自定义的组件 项目集成:MeterView 项目目录-->build.gradle allprojects { repositories { ... maven { url 'https

  • Android实现清除应用缓存功能

    Android实现清除应用缓存功能 本文实例为大家分享了Android清除应用缓存的具体代码,供大家参考,具体内容如下 import android.content.Context; import android.os.Environment; import java.io.File; import java.math.BigDecimal; /** * 获取缓存大小并清理缓存 */ public class DataCleanManagerUtils { /** * Context.getExterna

  • RecyclerView实现流式标签单选多选功能

    RecyclerView实现流式标签单选多选功能 RecyclerView简介 RecyclerView是Android一个更强大的控件,其不仅可以实现和ListView同样的效果,还有优化了ListView中的各种不足.其可以实现数据纵向滚动,也可以实现横向滚动(ListView做不到横向滚动).接下来讲解RecyclerView的用法. RecyclerView 基本用法 因为RecyclerView属于新增的控件,Android将RecyclerView定义在support库里.若要使用Recycl

  • Flutter Dio二次封装的实现

    Flutter Dio二次封装的实现 目录: DioManager:Dio辅助类NWMethod:请求方法,get.post等 NWApi:大家都知道 EntityFactory:json转换辅助工厂,把json转为T BaseEntity<T>:数据基类,返回的参数为 {"code": 0, "message": "", "data": {}} BaseListEntity<T>:数据基类2,返回的参

  • 使用kotlin协程提高app性能(译)

    使用kotlin协程提高app性能(译) 协程是一种并发设计模式,您可以在Android上使用它来简化异步执行的代码.Kotlin1.3版本添加了 Coroutines,并基于其他语言的既定概念. 在Android上,协程有助于解决两个主要问题: 管理长时间运行的任务,否则可能会阻止主线程并导致应用冻结. 提供主安全性,或从主线程安全地调用网络或磁盘操作. 本主题描述了如何使用Kotlin协程解决这些问题,使您能够编写更清晰,更简洁的应用程序代码. 管理长时间运行的任务 在Android上,每个应用程序都

  • Android9.0 静默安装源码的实现

    Android9.0 静默安装源码的实现 网上基本都停在8.0就没人开始分析Android9.0如何静默apk的代码,这是我自己之前研究9.0的framework整理出来的,真实源码整理 import android.content.BroadcastReceiver; import android.content.Context; import android.content.IIntentReceiver; import android.content.IIntentSender; import an

  • Android RecyclerView实现悬浮吸顶、分隔线、到底提示效果

    Android RecyclerView实现悬浮吸顶、分隔线、到底提示效果 本文中所有效果通过ItemDecoration实现,通过此实现的可以与业务解耦,让RecyclerView的模板更加简洁,不关心任何辅助性ui,github地址 一.顶部吸附效果图 二.顶部不吸附效果图 三.不满一屏效果 四.核心实现点 1.为什么通过ItemDecoration能够实现,原理? ①通过getItemOffsets()方法获取当前模板view的left.top.right.bottom边距,这些留出的间距用于绘制这

  • Android中实现长按照片弹出右键菜单功能的实例代码

    Android中实现长按照片弹出右键菜单功能的实例代码 场景效果 注: 实现 将布局改为LinearLayout,并通过android:orientation="vertical">设置为垂直布局. 然后添加一个ImageView,并设置id属性和图片源. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://sche

  • android实现小音频频繁播放

    android实现小音频频繁播放 android中多媒体文件(音乐和视频)的播放是用MediaPlayer方式是大家比较熟悉的,但是现在要来说一下另外一种音乐文件播放的方式SoundPool,相比较而言,用MediaPlayer来播放音乐的话,占用的系统资源是很多的,加载资源也需要时间,所以它不适合用来频繁播放小音频文件,比如控件焦点.点击时需要播放小音频文件,这个时候用SoundPool来播放音频文件,比用MediaPlayer来播放效率要高很多.这里也来说说,如果用MediaPlayer来播放小音频文

  • Android中点击按钮启动另一个Activity及Activity之间传值问题

    Android中点击按钮启动另一个Activity及Activity之间传值问题 场景 点击第一个Activity中的按钮,启动第二个Activity,关闭第二个Activity,返回到第一个Activity. 在第一个Activity中给第二个Activity传递值,第二个Activity中获取并显示. 打开第二个Activity Activity传值 实现 启动另一个Activity 在第一个Activity中的按钮的点击事件中 Button secondActivityButton = (Butto

  • AndroidQ(10)分区存储完美适配方法

    AndroidQ(10)分区存储完美适配方法 前言 最近时间在做AndroidQ的适配,截止到今天AndroidQ分区存储适配完成,期间出现很多坑,目前网上的帖子大部分都是概述变更内容,接下来的几篇帖子都是对分区存储实际经验代码总结,填坑经验,特此记录一下,也为大家提供帮助. 本篇主要是对AndroidQ(10)分区存储适配具体实现 要点: Android Q文件存储机制修改成了沙盒模式 APP只能访问自己目录下的文件和公共媒体文件 对于AndroidQ以下,还是使用老的文件存储方式 这里需要注意:在适配

  • Android 自定义缩短Toast显示时间的实例代码

    Android 自定义缩短Toast显示时间的实例代码 我这个主要是缩短Toast显示时间,要延长时间的话,可自行更改 废话不多说哈,见代码 import android.content.Context; import android.os.CountDownTimer; import android.util.Log; import android.widget.Toast; public class ToastUtil { private String TAG = "ToastUtil&qu

  • Android倒计时功能的实现代码

    Android倒计时功能的实现代码 好久没有写博客了,趁着年末,总结了下最近一年所遇到的一些技术问题,还有一些自定义控件,比如倒计时功能 首先倒计时的实现方式 1.Handler 2.Timer 3.RxJava 4.ValueAnimator 5.其他 这些方式中,我选择了ValueAnimator,主要是它的API比较友好,不需要我们去封装太多东西,具体的使用方式我就不单独写了,下面的代码都有备注 项目地址 项目图片 代码实现: package com.example.countdownview; i

  • android 自定义圆角button效果的实例代码(自定义view Demo)

    android 自定义圆角button效果的实例代码(自定义view Demo) 概述 在平时开发过程中经常会碰到需要使用圆角button的情况,一般也会包括很多其他小功能,比如要在里面添加img,设置不同的圆角大小等. 针对这样的场景,直接使用创建多个shape,定义多个xml文件也是可以实现的.但是如果使用非常频繁,那么直接自定义一个就会来的非常方便. 甚至在一些情况下,不是可以用shape定义的规则图形,比如需要用到贝塞尔曲线等. 如果全局需要这样风格的view,那么自定义一个View是非常必要的.

  • Android 自定义ListView实现QQ空间界面(说说内包含图片、视频、点赞、评论、转发功能)

    Android 自定义ListView实现QQ空间界面(说说内包含图片、视频、点赞、评论、转发功能) 前端时间刚好需要做一个类似于QQ空间的社区分享功能,说说内容包含文字(话题.内容).视频.图片,还需包含点赞,评论,位置信息等功能. 就采用LIstview做了一个,先来看下效果,GIF太大,CSDN传不了,请移步Gitee连接:GIF效果 1. 先来分析一下ListView中每一个条目包含的控件,请看下图 序号1:头像,ImageView,自定义为圆形即可: 序号2:用户名,TextView; 序号3:

  • Android物理键盘事件解析

    Android物理键盘事件解析 前言 Android设备连接物理键盘其实是个挺小众的需求,其实Android设备本身就是支持物理键盘,dispatchKeyEvent()这个方法就可以监听物理键盘,这里提供一个封装的类,解析键盘事件.有很多事件,具体可以去看KeyEvent这个类的源码,我这里只处理的数字键盘. 实现方式 1.键盘事件解析类 public class DispatchKeyResolver { public OnKeyInputListener keyInputListener; publ

  • Android自定义gridView仿头条频道拖动管理功能

    Android自定义gridView仿头条频道拖动管理功能 项目中遇到这样个需求:app的功能导航需要可拖动排序,类似头条中的频道拖动管理.效果如下,gif不是很顺畅,真机会好很多. 虽然类似的文章网上搜一下有很多,但写的都不令人满意,注释不清晰,而且动画还不够流畅.经本人整理优化后,拿出来供后续有需要的使用. 实现原理: gridView作为基本控件 WindowManager.addView的方式实现可拖动的view TranslateAnimation实现移动动画,动画完后更新adapter即可 主

 13 14 15 16 17 18 19 20 21 22