Android路由机制下Tab页跳转解决方案
使用过路由框架的人应该知道,使用url的形式进行页面跳转是一种很不错的方式。在不需要import对应页面引用的情况下,通过url可以打开页面,并且可以进行传递参数,设置flag等等操作。但是当一个页面中有viewpager+fragment或者fragmelayout+Fragments的情况下,我们如何通过url进行精准的Tab页跳转呢?1.涉及框架 路由框架(AR...
Android关于Retrofit+Rxandroid+lifecycle在vc架构的封装和使用
最近正在做一个项目,架构呢就是使用的第一篇博客所描述的架构。在业务模块中,ui框架使用了不严谨的mvc架构,摒弃了m层,把m层与c层合并到了一起,也就是vc模式的架构。一个View与一个Controller一一对应,那么操作逻辑和网络请求在controller中执行,然后view中根据数据做出响应。 该框架的封装要感谢我的俩同事, @朱小蛟 和 @马小飞,代码大部分都...
Android Butterknife在library模块中的使用问题
当项目中有多module时,在使用Butterknife的时候会发现在library模块中使用会出问题。当library模块中的页面通过butterknife找id的时候,就会报错。 如图,testbmodule模块plugin为library,也就是一个library的模块,然后看模块中的一个页面。 ...
谷歌浏览器 Chrome v68.0.3440.84 正式版发布
谷歌浏览器 Google Chrome 稳定版迎来 v68 正式版第二个维护版本发布,详细版本号为 v68.0.3440.84,上一个正式版 v68.0.3440.75 发布于7月25日,时隔 7 天 Google 又发布了新版 Chrome 浏览器,本次升级主要是更新了安全修复和稳定性改进及用户体验。 有关变更详情列表,请查看变更日志。 官方更新日志 Chrome 稳定版已经更新到 v68.0.3440.84,本次更新官方并未给出详细更新日志。 v68.0.3440.75 -安全修复程序和奖
Android表盘自定义控件
Header
很久不写自定义控件,最近一个项目中有个控件需要进行自定义,便拿着这个控件重新熟悉了一下自定义控件的流程和思维方式,自定义控件在Android中算是一个基础技能,熟悉自定义控件,可以在原生控件无法满足需求的情况下游刃有余,下面来看看这个简单的自定义控件是如何实现的。
Body
效果
首先,要做的是一个半圆环控件,类似汽车速度仪表盘...
Unity3d 显示指定目录下的所有粒子
这个是一直重复播放粒子的脚本using UnityEngine;
public class ParticleAlwayPlay : MonoBehaviour
{
private ParticleSystem[] arr;
// Use this for initialization
void Start ()
{
arr = gameObject...
Unity3d 查看项目所有中文注释
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text;
using UnityEngine;
/// <summary>
/// 扫描项目所有代码.cs文件 ,检测文件的每行数据,如果包含中文就保存到
/// ScanningCsChinese_res...
Unity3d 返回值的异步方法
async-await 异步功能开启方法:Unity 2017,及以上版本(Edit -> Project Settings -> Player-> Scripting Runtime Version”-> “Experimental (.NET 4.6 Equivalent).第一种方法:
IEnumerator CustomCoroutineWithReturnValu...
apk 换肤之替换Context
Caused by: java.lang.SecurityException: Requesting code from com.fly.changeskin (with uid 10045) to be run in process com.fly.testskin (with uid 10046)
Android Studio编译大工程报错:java.exe'' finished with non-zero exit value 1
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.proce
SVN 分支合并到分支
在要合并到的分支目录选择菜单Marge,选择合并两个不同的分支的差异到您的工作副本;
From:选择从哪个分支合并代码和合并的起始版本号;
To:选择从哪个分支合并代码和合并的截止版本号;
还可以test marge测试合并看冲突情况;
最后选择marge处理好冲突,提交更改就完成分支的合并了。
Gradle编译加速
Gradle是Android项目新的编译系统,是基于JVM的进化版的编译工具;它从构建工具(如Ant 和Maven)汲取了经验教训。随着Android项目变得越来越复杂,模块化的开发实践变得越来越流行,编译性能至关重要。在每次编译时节省几秒能大大提高效率。
你可能已经意识到,即使最简单的Gradle 可以说相当慢,这里有一些提示,以提高gradle 任务的执行性能:
Gradle守护进程
你可以
Android Multidex分包
Multidex分包:
一个apk包里面可以包含多个dex.
分包要解决的问题:
android5.0之前使用的dvm虚拟机,dvm虚拟机里以short保存一个dex里面的方法数。在java里面,short类型(16位)的最大值是65535。一旦一个dex里面的方法数超过了65535就会抛出异常。
Java中常用的类加载器:
BootClassLoader
纯C++实现的类...
二维数组查找&一维数组转换
1。
输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。
这里写代码片
2。
有一个二维数组,数组的每行从左到右是递增的,每列从上到下是递增的.在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N);
这里写代码片
今日推荐
周排行