- 博客(39)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 鸿蒙中富文本编辑与展示
阅读本文章,我们已经了解了富文本编辑器的实现,可以按照步骤一步一步实现自己的富文本编辑器,也学会富文本的展示,通过正则表达式分割自己需要的内容,然后通过Text中的span、imagespan组件展示分割的内容,本章节就介绍这些东西。后续章节我将依次从简入深,讲解鸿蒙的开发中遇到各种问题。欢迎大家一起交流。如果你在鸿蒙开发中遇到难点,不会的可以私信我,根据我最近的开发经历,已经基本踩完大部分坑,一起交流使我们共同进步。
2024-10-20 21:31:49 1342
原创 鸿蒙开发入门
阅读本文了解到鸿蒙是什么,鸿蒙的开发工具是什么,鸿蒙Next版本是什么,并且运行了第一个页面,hello word。后续章节我将依次从简入深,讲解鸿蒙的开发中遇到各种问题。欢迎大家一起交流。如果你在鸿蒙开发中遇到难点,不会的可以私信我,根据我最近的开发经历,已经基本踩完大部分坑,一起交流使我们共同进步
2024-10-20 21:25:46 510
原创 Compose常用布局
Compose布局基础知识上一节对Compose做了简单的介绍,本章节主要介绍Compose中常用的布局,其中包括三个基础布局(Colmun、Row、Box);以及其他常用布局(ConstraintLayout 、BoxWithConstraints、HorizontalPager、VerticalPager、LazyColumn、 LazyRow ) 等,学习了本章您将会可以自己写出各种炫酷的布局。完成Compose中各种UI开发。Jetpack Compose可以让您更轻松地设计和构建应用的界面。
2023-12-24 10:55:20 1897
原创 Compose入门
*官方解释:**Jetpack Compose是用于构建原生Android界面的新款工具包。它可简化并加快Android上的界面开发,使用更少的代码、强大的工具和直观的Kotlin API,快速打造生动而精彩的应用。**个人理解:**为了解决安卓原始xml构建UI的弊端,对照IOS的swift、Web的Vue等声明式编程的产物。
2023-11-25 20:37:21 1569
原创 安卓中轻量级数据存储方案分析探讨
MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。从 2015 年中至今在微信上使用,其性能和稳定性经过了时间的验证。近期也已移植到 Android / macOS / Win32 / POSIX 平台,一并开源。存储1000个int类型的数据所占空间:mmkv:16KB存储1000个String类型的数据所占空间:mmkv:32KB如果你有多进程支持的需求,MMKV是唯一的选择。
2023-11-19 10:09:47 548 1
原创 Android Studio 升级代码报错找不到类
一、Android Studio 升级代码报错找不到类1、问题现相import androidx.core.content.ContextCompat; 爆红X 找到类很多类都找不到。(1)sync project 无效(2)clean project 无效(3)rebuild project 无效2、解决办法删除工程.idea文件夹,重新打开即可。...
2022-06-08 22:03:41 1825 1
原创 安卓原生接入Flutter -- couldn‘t find “libflutter.so“
一、报错日志java.util.concurrent.ExecutionException: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.xiaoban.driver-1/base.apk"],nativeLibraryDirectories=[/data/app/com.xiaoban.driver-1/lib/arm, /data/app/com.
2020-09-11 11:33:11 993
原创 Flutter升级到V1.20.1之后,FlutterActivity页面关闭崩溃
一、问题描述(1)问题描述:加载Flutter的页面,当页面关闭时候,App崩溃。(2)影响版本大概:Flutter Sdk (V1.17.5 - V1.20.1)。(3)问题原因:disconnectSurfaceFromRenderer在页面关闭释放时候被调用两次,第二次调用时候renderSurface已经为空,造成空指针。// FlutterRenderer must be non-null.private void disconnectSurfaceFromRenderer()
2020-08-11 17:37:14 1010
原创 Flutter升级到V1.17.5之后崩溃。
一、崩溃日志:java.lang.NullPointerException: Attempt to invoke interface method 'void io.flutter.embedding.engine.renderer.RenderSurface.attachToRenderer(io.flutter.embedding.engine.renderer.FlutterRenderer)' on a null object reference at android.app.A...
2020-08-07 15:52:20 733 1
原创 图片转URI在更多分享QQ时提示图片不存在问题
1、问题描述原来转URI方法String path = getResourcesUri(R.mipmap.invitate_bg);使用Intent.ACTION_SEND,分享图片时,获取资源文件图片,在QQ时提示图片不存在,分享微信朋友圈时提示资源文件不存在问题。2、解决办法修改获取图片方法Bitmap bitmap = BitmapFactory.decod...
2019-09-17 11:14:29 749
原创 release包安装打开就崩溃
2019-08-16 15:16:15.163 6615-6615/com.xiaoban.driver E/AndroidRuntime: FATAL EXCEPTION: main Process: com.xiaoban.driver, PID: 6615 java.lang.RuntimeException: Unable to get provider android.s...
2019-08-16 15:21:55 983
原创 Android 7.0 系统解决拍照的问题
崩溃日志:android.os.FileUriExposedException: file:///storage/emulated/0/DCIM/Photo/IMG_20192205_092230.jpg exposed beyond app through ClipData.Item.getUri() at android.os.StrictMode.onFileUriExp...
2019-06-05 09:41:08 263
原创 Android9.0的坑 err_cleartext_not_permitted
WebView在android 9.0以上加载http的url 出现err_cleartext_not_permitted解决办法:添加android:usesCleartextTraffic="true"即可,亲测有效<application android:name=".MyApplication" android:allowBackup="t...
2019-03-07 16:00:03 2179
原创 安卓开发遇到的坑
1、android studio快捷键不提示解决办法(1)可能是缓存已满,没足够空间了(2)点击INvalidate Caches/Restart...2、android studio在build时候出现,无法连接google,下载不了最新的jar。报错显示:Failed to resolve: com.android.support:appcompat-v7:27.1.1...
2018-10-22 20:28:08 247
原创 ButterKnife使用及原理
一、ButterKnife使用1、在build.gradle的dependencies添加类库implementation 'com.jakewharton:butterknife:8.8.1'annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'2、初始化绑定以Activity为例,其他类同。unbi...
2018-08-05 22:40:22 584
原创 Android四大组件之Activity
一、Activity activity在应用是一个界面,它加载布局文件显示各种UI元素。并且各个Activity可以相互跳转。1、Activity生命周期oncreate:在activity第一次被创建时候调用,在此完成Activity的初始化操作(设置布局,初始化视图,绑定事件)onStart:在onCreate之后调用,此时处于不可见状态。onResume:在...
2018-08-05 21:42:50 169
原创 升级Android Studio3.1.3,gradel无法加载pom和类库
Android studio 3.1 导入app项目后,gradle无法获取 pom文件具体保存内容如下: Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0...
2018-08-05 21:38:49 4305 2
原创 OkHttpClient的坑
一、在返回值中拿不到返回的数据。 OkHttpClient没有返回Json数据。client.newCall(request).enqueue(new okhttp3.Callback() { @Override public void onFailure(okhttp3.Call call, IOException e) { Log.d("Activi...
2018-08-01 14:35:34 3801
原创 EditText的点击事件首次不触发
EditText的 setOnClickListener 事件,点击首次不触发原因,先获取焦点(未获取焦点时候),再次点击触发setOnClickListener 事件。 解决首次点击处理业务问题:监听EditText的setOnTouchListener方法,在触摸事件的MotionEvent.ACTION_UP回调中作出相应的操作即可。...
2017-01-05 11:34:53 6683 2
原创 不要重复造轮子,但必须知道轮子怎么造的 -----listview实现下拉刷新滚动加载
看到好多不错的下拉刷新、滚动加载效果(京东、美团,今日头条)。但是首先先明白一点无论怎么实现,都要通过下拉刷新,滚动加载基础上添加漂亮的动画实现。下面讲一下用listview实现下拉刷新,滚动加载原理(重点原理,不在下拉刷新的动画)。 下拉刷新通过 addHeaderView(headerView); 添加Listview的头部实现,滚动加载通过addFooterView(footerView);添加Listview的尾部实现。
2016-12-01 15:46:57 440
原创 EventBus的使用以及原理
1、eventbus用途 eventbus是一个用于Activity,Fragment、Service、Threads之间信息传递的一个发布/订阅事件集。(1)解决问题: 传统android组件之间的通信方式有:Activity之间使用Intent、Serivce与Activity之间使用的Broadcast;Fragment和Activity之间互相持有对方的引用,通过调用对
2016-07-03 18:15:42 829
原创 Android四大组件之Activity、Service
一、Activity activity在应用是一个界面,它加载布局文件显示各种UI元素。并且各个Activity可以相互跳转。1、Activity生命周期oncreate:在activity第一次被创建时候调用,在此完成Activity的初始化操作(设置布局,初始化视图,绑定事件)onStart:在onCreate之后调用,此时处于不可见状态。onResume:在act
2016-05-19 21:02:26 1186
原创 拆装箱 == 与equals int 和Integer 堆和栈
2016年5月16日 开始我工作后的第一篇博客,主要总结一下在工作中java基础部分的一些困惑。与大家分享,欢迎大家一起讨论探究。
2016-05-16 13:21:11 1130
原创 Java基础中String
一、String类适用于描述字符串事物,那么它提供了多个方法对字符串进行操作 常见操作:1、获取 1.1字符串中包含的字符数,也就是字符串的长度 int length():获取长度 1.2根据位置获取位置上某个字符 char charAt(int index) 1.3根据字符获取该字符在字符串...
2014-11-08 17:35:46 351 1
原创 java基础中多线程
一、多线程概述 进程:是一个正在执行中的程序。 每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者叫控制单元 线程:就是进程中的一个独立的控制单元 线程在控制着进程的执行 一个进程中至少有一个线程 java VM启动的时候会有一个进程java.exe 该进程中至少一个线程负责java程序的执行 而且这个线程运行代码存在于main方法中 该线程为主线程 ...
2014-11-06 10:42:54 342
原创 java基础加强中反射
一、反射定义: 就是把Java类中各种成分反射成相应的java类。 二、获得Class对象如何得到各个字节码对应的实例对象?每个类被加载后,系统会为该类生成对应的Class对象,通过Class对象可以访问到JVM中的这个类,3种方式:1、调用某个类的class属性获取Class对象,如Date.class会返回Date类对应的Class对象(其实就是得到一个类的...
2014-10-29 11:08:41 357
原创 网络编程中Tcp客户端并发上传图片
一、需求: 客户端并发上传图片二、分析:1、 客户端。 (1)服务端点 (2)读取客户端已有的图片数据 (3)通过socket输出流将数据发给服务端 (4)读取服务端反馈信息 (5)关闭class PicClient //客户端{public static void main(String[] args) throws Except...
2014-10-26 21:16:36 550 1
原创 网络编程中Tcp练习
一、需求:建立一个文本转换服务器客户端给服务端发送文本,服务端会将文本转成大写在返回给客户端而且客户端可以不断的进行文本转化。当客户端输入over时转换结束。二、分析及代码实现:1、客户端:既然是操作设备上的数据,那么就可以使用io的操作规律来思考。源:键盘录入目的:网络设备,网络输出流而且操作的是文本数据,可以选择字符流都是文本数据,可以使用字...
2014-10-25 20:02:15 473 1
原创 网络编程中Tcp传输协议
TCP传输协议1、特点 建立连接,形成传输数据的通道;在连接中进行大数据量传输;通过三次握手完成连接,是可靠协议;必须建立连接,效率会稍低。2、演示tcp传输(1)tcp分客户端和服务端 (2)客户端对应的对象是Socket 服务端对应的对象是ServerSocket a、需求:给服务端发送给一个文本数据 分析: ...
2014-10-23 17:22:21 478 1
原创 网络编程中udp传输协议
UDP传输协议 1、特点:将数据及源和目的封装成数据包中,不需要建立连接,速度快,每个数据包的大小限制在64k内,不可靠的协议 2、需求:定义一个应用程序,用于接受udp协议传输的数据并处理。 思路: (1)定义udpsocket服务.通常会监听一个端口。其实就是给这个接收网络应用程序定义数字标示。 方便于明确哪些数据过来该应用程序可以处理。 (2)定义一个数据包,因为要...
2014-10-23 16:17:37 517
原创 GUI中保存文件和打开文件
一、问题描述 创建一个简单的记事本,包括打开,保存,退出菜单并能实现其操作。二、思路1、创建Frame窗体,对窗体进行基本设置比如:大小,位置,布局 (1)创建Frame窗体:Framef = new Frame("my window"); (2)对窗体设置大小:f.setBounds(x, y, width, height...
2014-10-21 17:40:48 1340 1
原创 Java基础IO流综合实例
一,问题描述有五个学生,每个学生有3门课的成绩从键盘输入以上数据(包括姓名,三门课成绩)输入的格式:如:zhangsan,30,40,50计算出总成绩并把学生的信息和计算出的总分数从高到底顺序存放在磁盘文件“Stud.txt”中二,思路1、首先我们需要一个学生对象(Student),再需要一个容器来存储这些学生对象,由于学生对象需要按总分数排序,所以需要一个能排序的容器,这...
2014-10-20 08:12:51 703 1
原创 IO中合并流和切割文件
在通过FileOutputStream写,合并到一个里面;切割文件就是先把要分割的文件通过FileInputStream读取,确定要分割的大小,然后通过FileOutputStream写出。下面具体事例: 1、合并流 合并1.txt,2.txt,3.txt到4.txtpublic class SequenceDemo {public static void main(Str...
2014-09-28 10:08:14 586
原创 Properties和RandomAccessFile类
一、Properties的概述及其方法1、Properties的概述 Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。 一个属性列表可包含另一个属性列表作为它的“默认值”;如果未能在原有的属性列表中搜索到属性键,则搜索第二个属性列表。 因为 Prope...
2014-09-24 09:29:18 472
原创 演示MP3和图片以及.java文件的复制
通过学习MP3,图片及java文件的复制,可以把一个文件从一处复制到另一处,我学到在复制的原理,基本上都是通过字节流的缓冲区完成,下面举例:1、演示MP3的复制,通过缓冲区 public class CopyMp3 {public static void main(String[] args) throws IOException {long start=System....
2014-09-23 21:46:33 523
原创 IO流的读写流对象及缓冲区
1、FileWriter创建一个FileWriter对象,该对象以被初始化就必须要明确被操作的文件而且该文件被创建到指定目录下。如果该目录下已有同名文件,将被覆盖。Filewriter fw=newFileWriter("demo.txt");(1) fw.write("ass"); //调用write方法,将字符串写入到流中(2)fw.flush(); 刷新流对...
2014-09-22 14:39:05 664 1
原创 正则表达式
一、正则表达式知识点: 是一种专门用于操作字符串的规则, 通过一些符号来表示,简化对字符串的复杂操作 弊端:阅读性差常见的操作: 1、匹配 String matches(regex) 2、获取(查找):Pattern,Matcher Pattern p=Pattern.compile(regex); Matcher m=p.matcher(Str...
2014-09-21 09:01:31 361
原创 javascript中的常见标签
1、字体:<font><font size="7"color="#fff000">数据</font>特殊部分:如果在页面显示一些特殊符号,需要进行转义标题:<h1.....6>----------------------2、列表标签:<dl></dl> 上层项目:&am
2014-09-16 16:13:42 5689
fragment嵌套fragment 存在 问题
2016-06-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人