Android应用
丽萨的托马斯
这个作者很懒,什么都没留下…
展开
-
整理使用RecyclerView控件在长按删除事件中的用法(使用Kotlin)
一、前言:在最近的学习中,使用Recyclerview控件时,遇到需要长按删除的场景,在测试过程中,遇到各种崩溃,在这里总结一下:在本博客汇中,使用了一个统计学生信息的demo,并且用到了SQLite,这样保证长按删除的同时数据库也能同步数据,先上一下长按删除的效果图:二、代码分析:长按删除item最重要的是要确保数据库的同步进行。1.Student类代码:class Student(val name: String, val gender: String, val age: Int) {}原创 2020-08-17 11:30:57 · 1531 阅读 · 0 评论 -
解决使用kotlin编写OkHttp的网络请求时遇到的OOM问题
一、背景介绍:问题的出现是因为我的代码中需要进行网络请求,而网络请求又是在一个线程中,间隔几秒就会请求一次,为了方便,就是用的OkHttp进行网络访问,本来,是没问题的,谁知道,某次测试时间长了一点,然后apk就突然闪退了,看了下log,是因为大量创建了线程,栈被撑爆了,OOM,遂卒~,通过网上找资料,最终查明原因是OkHttp的client没有进行单实例封装,每发一次请求,就会创建一个线程池,最终OOM,下面就这个问题,单独写了一个demo进行问题模拟及解决。二、模拟复现:1.OkHttp的异步访问原创 2020-07-15 17:29:41 · 1813 阅读 · 0 评论 -
Android中使用任意activity操作同一数据库的方法(使用kotlin编写)
一、引言:Android中经常会遇到在多个activity中需要对同一个数据库进行操作的场景,这里写了一个简单demo来说明这种情况的实现原理,下图是一个GIF(凑合看下效果,CSDN允许上传的git文件太小,经过多次丢帧勉强上传,但效果快失真了):编写了两个activity对同一数据库(student,包含name和age两个元素)进行增删改查的操作,Android中提供了SQLiteOpenHelper类对SQLite进行操作,下面对各个代码进行讲解。二、创建的一个继承SQLiteOpenHel原创 2020-06-30 15:49:08 · 2117 阅读 · 0 评论 -
Android中让控件在布局中任意位置摆放的xml配置方法
一、引入:Android中常用的布局方式有三种,LinearLayout、RelativeLayout和FrameLayout,相较于后面一种的场景局限性,前两者使用的场景更多。在实际开发中,我们经常会遇到下面一种情况,如何将控件在布局当中的任意位置进行摆放,前面两种布局都可以做到,当然,更加推荐使用相对布局(RelativeLayout),比如类似下面的这种控件摆放场景,直接上效果图:为了区别布局和控件,我们分别对其进行了背景色的设置,可以看到,所有的控件是垂直分布的,他们距离边框或者其它控件的位置原创 2020-06-28 14:55:51 · 10284 阅读 · 0 评论