移动开发

10、String、String StringBuffer 和 StringBuilder 的区别是什 么?

String、String StringBuffffer 和 StringBuilder 的区别是什么?         String是只读字符串,它并不是基本数据类型,而是一个对象。从底层源码来看是一个final类型的字符数组,所引用的字符串不能被改变,一经定义,无法再增删改。每次对String的操作都会生成新的String对象。     每次+操作 :隐式在堆上new了一个跟原字

App进程的启动过程

本次源码基于Android11分析 相关源码: /frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java /frameworks/base/services/core/java/com/android/server/am/ProcessList.java /frameworks/b

Flutter 实现Tab切换

Flutter 是通过Tabbar + TabbarView 来实现 类似Android Viewpager 页面切换的效果的。我个人觉得Flutter 的tab 切换实现过程要比Android的实现过程要简单容易不是一星半点,哈哈哈哈 ,因为她所用到的widget 都是google 官方封装好的,用起来代码量简洁了超级多!! 如果我们只是想要实现一个简单的页面切换的效果,不需要折叠悬浮置顶的功能

Swift 实现自定义 UICollectionView的 section 背景

自定义 section 背景 首先创建一个 section装饰背景注册类, 内部包含一个 UIImageView, 可作为自定义背景填充视图 class SectionBackgroundReusableView: UICollectionReusableView { static let BACKGAROUND_CID = "BACKGAROUND_CID" private

Android-推荐一个与H5交互的库(JsBridge)

图片来源网络,入侵必删 最近项目当中,需要与H5进行交互。如果快速实现需求呢?虽然很多框架都支持,但是我们前端大佬指定要使用JsBridge来进行交互。 JsBridge 这个开源库在 Java 和 JavaScript 之间架起了一座桥梁,它提供了从js调用java代码和从java调用js代码的安全便捷的方式。 导入项目 repositories { // ... m

onInterceptTouchEvent() 与 onTouch() 事件分析

学习笔记:直接上代码,对了在这里强调一点 onTouch() 与 onTouchEvent() 事件不一样。 先看布局文件: <?xml version="1.0" encoding="utf-8"?> <com.tinno.intercepttouch.MyFrameLayout xmlns:android="

WKWebView 加载 Uni-App 导出的本地 H5

Uni-App 打包发布的H5包直接放到APP中加载可以用于提升加载速度,一般有两种方式: 直接把包放到 iOS 项目中加载 (多用于开发阶段测试) 从后台服务器预下载到文件沙盒内加载 (可以减少APP包大小,同时也能实现热更新功能) 加载步骤 一、创建一个uni-app项目,并打包成H5 在官方工具HBuilder中创建一个测试项目 创建uni-app 修改 manife

Android11最全适配实践指南

以Android11 为目标版本的应用(targetSdkVersion>=30才有影响) 所有应用在Android11设备上适配改动(无论targetSdkVersion是多少,只要在Android11设备上运行的应用都有影响) 为什么先说targetSdkVersion>=30的模块呢?因为一般来说为了Google为了让我们更长时间适应新的内容以及保障线上应用的稳定,都会把改动

Android TextView的一些常见功能

效果.png 简介 TextView作为Android开发中的基础控件,在日常开发中我们频繁使用到TextView的一些功能.这里就简单总结了一下开发中常用的一些功能 功能 设置大小不一的文字 设置中划下 设置小数点以后文字字体大小 设置不同颜色展示文字 展示图文混排 实现 1 设置中划线 /** * 中间划线的效果 * @param textView