- 博客(5)
- 收藏
- 关注
原创 [Android]应用前后台切换ProcessLifecycle的坑
最近开发应用有这么一个需求,需要监听app的生命周期,能够感知到用户划到后台,回到前台这些事件。Google以及帮我们实现好了,只需在项目中引入依赖 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.4.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'然后自定义一个 LifecycleObserver,在这里面实现生命周期事件对应的响应
2022-02-28 21:59:37 3319
原创 [Android]手把手带你写个权限请求工具
前言:这是一个由kotlin编写的权限请求工具,调用只需要一段代码。支持协程式回调和函数式回调。如果你只是白嫖党,请直接划到最底下进入项目地址,添加依赖并开始你的摸鱼划水之旅!背景:传统的权限申请存在许多弊端:1、在Activity中需要引入大量代码,各个模块之间藕断丝连,项目臃肿不堪。2、在Activity接收到权限申请结果回调的时候,还要与调用的地方通信,真的是非常的麻烦。实现原理:Fragment也可以进行权限申请,虽然回调在Ac...
2022-02-17 13:52:30 1690
原创 【Android】炫酷ui 带你做一个背景跟着滚动的工具
在用ViewPager配合Fragment开发的模式中,想做一个类似于桌面壁纸的背景图,可以跟着ViewPager滑动。 先说一下大体思路: 在ViewPager滑动的过程中,监听滑动百分比,再通过这个滑动的百分比来控制背景图的偏移,背景图的偏移通过背景图的尺寸和View容器的尺寸来计算。最后将这个偏移后的图片显示在ImageView或者某个View的Drawable上。(其实SurfaceView的性能会强得多,但是SurfaceView...
2021-10-24 13:42:56 3336 1
原创 PTA:7-5 堆栈模拟队列
设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数:int IsFull(Stack S):判断堆栈S是否已满,返回1或0; int IsEmpty (Stack S ):判断堆栈S是否为空,返回1或0; void Push(Stack S, ElementType item ):将元素item压入堆栈S; ElementType Pop(Stack S ):删除并返回S的栈顶元素。实现队列的操作,即入队void AddQ(E
2021-06-21 14:47:40 429
原创 PTA:7-3 表达式求值_1
在一个表达式中,只有“(”,“)”,“0-9”,“+”,“-”,“*”,“/”,“^”,请求出表达式的值。(“/”用整数除法)。输入格式:共1 行,为一个算式。 (算式长度<=30 其中所有数据在 0~2^31-1的范围内)。输出格式:共一行,为表达式的值。输入样例:在这里给出一组输入。例如:1+(3+2)*(7^2+6*9)/(2)输出样例:在这里给出相应的输出。例如:258...
2021-06-21 10:34:49 1360
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人