ICode9

精准搜索请尝试: 精确搜索
  • Objective-C 的 RunTime(四):获取类的详细信息2021-05-05 15:32:22

    目录 相关函数介绍获取类的:成员变量列表 && 属性列表 && 方法列表 && 所遵守的协议列表应用场景:修改私有属性应用场景:万能控制器跳转应用场景:实现字典转模型应用场景:改进归档和解档 相关函数介绍 ivar 相关函数 /* 获取成员变量的名称 @param v 要检视的成员变量 @ret

  • ViewModel 源码分析2021-04-25 22:57:12

    预备知识 在Android中我知道Activity有一个onSaveInstanceState函数,用于在Activity在不幸被回收或者配置改变时存储序列化对象,在下次重建时onRestoreInstanceState取出序列化数据. 要是我们有非序列数据呢? public Object onRetainNonConfigurationInstance和public Object

  • iOS AFNetworking用法详解2021-04-22 15:59:13

    AFNetworking下载地址:https://github.com/AFNetworking/AFNetworking 1.发送GET请求 第一个参数:NSString类型的请求路径,AFN内部会自动将该路径包装为一个url并创建请求对象 第二个参数:请求参数,此处为nil 第三个参数:进度回调,此处为nil 第四个参数:请求成功之后回调Block 第五

  • Jetpack框架探究03:ViewModel组件的使用与源码分析2021-04-12 19:59:51

     ViewModel 具备宿主生命后期感知能力的数据存储组件,使用 ViewModel 保存的数据,在页面因配置变更导致页面销毁重建之后依然也是存在的,其中配置变更主要是指横竖屏切换、分辨率调整、权限变更、系统字体样式变更。ViewModel 的优势: 页面更改数据不丢失  当设备因配置更改导

  • 融云即时通讯sdk, 把头像设置为圆角图片在4.x和5.x的区别 -- 融云即时聊天sdk使用小技巧2021-04-06 19:02:59

    融云即时通讯sdk, 把头像设置为圆角图片在4.x和5.x的区别 -- 融云即时聊天sdk使用小技巧 背景: 最近公司新上的app要加上即时通讯的功能, 自己快速实现一个当然是不可能的了(项目deadline也顶不住哇).就从各家成熟的SDK厂商选来选去的, 各有各的好也各有各的不足.最后点兵点将,选

  • Java Bean Collection 属性级联拷贝2021-03-10 03:32:06

    通过 Spring 的 BeanUtils.copyProperties() 实现 Java Bean 中集合属性的级联拷贝。 简单来说就是 @Data public class A { List<B> prop; } 与 @Data public class C { List<D> prop; } 之间的拷贝,也就是拷贝 Bean 中同名不同泛型的集合类属性。 package com.seliote.fr.u

  • Spring 5 core 中的 @NonNull 是个什么鬼?!2021-03-03 22:54:28

    说明在Spring 5的 spring-core jar包中添加了 jsr-305 相关注解。在 Spring 源码中已经被大量使用。如下图:JSR-305介绍诸如 FindBugs、IntelliJ、Checkstyle 和 PMD 这样的静态分析工具在 Java 开发中得到了广泛应用。这些工具都很强大,但是有一些共同的问题它们都很难解

  • Glide 学习计划2021-02-01 12:04:41

    熟悉Glide使用 分析Glide.with(context).load(url).into(view) 的内部实现 初始化流程和获取RequestManager Glide.with(context)会获取一个RequestManager对象. 在这个过程中涉及到 Glide 初始化RequestManagerRetriever 接下来一步步分析. Glide.with(this).load(IMG_URL).i

  • 使用 Item TouchHelper 实现 RecyclerView的 item 上下移动2021-01-25 13:57:35

    代码如下: package com.example.temp; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.core.content.ContextCompat; import androidx.recyclerview.widget.ItemTouchHelper;

  • 最近心血来潮,把Androidautosize的源码搂了一眼2021-01-14 21:03:34

    https://codechina.csdn.net/mirrors/jessyancoding/androidautosize?utm_source=csdn_github_accelerator   以上是Androidautosize的源码,有兴趣的就去下下来搂一眼   我这边还没看完,就把最基础的看了一下,然后顺了下简单的流程,顺便自己写了写试试,来给大家看一眼。   And

  • 7.Null-safety2021-01-04 19:01:02

    一、基本说明 Java不允许用它的类型系统表示空安全性,Spring框架现在在org.springframework.lang包中提供了注解用于声明API和字段的可空性,目前暂不支持泛型类型参数、数组变量的元素参数的可空性 二、注解 @Nullable:用于指示特定参数、返回值或字段可以为null。 @NonNull:用于指

  • Android开发---在RecyclerView列表中添加自定义的列表头部与尾部视图2020-12-27 14:00:17

    在RecyclerView列表中添加自定义的列表头部与尾部视图 参考资料前言加入头部与尾部 参考资料 android–使用RecyclerView及相关架构组件实现列表数据展示 前言 基本思路: 首先,头部和尾部也是列表的一部分,它们的添加方式应该和列表中显示数据的主体部分没有太多区别。除

  • Android开发知识(二十八)Glide4.x的源码解析(下)2020-12-26 16:01:15

    文章目录 前言网络请求过程优先磁盘缓存获取网络请求加载器网络请求 图片解码过程获取图片解码器图片解码 绑定图片到Target尾声 前言     这是Glide源码分析的下篇,如果你还没看过上篇的分析,最好能先去看我的上篇分析:Glide4.x的源码解析(上). 本篇我们来重点讨论加下来

  • iOS 解决WKWebView加载H5不显示弹框2020-11-10 11:31:38

    - (void)webView:(WKWebView *)webView runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(WKFrameInfo *)frame completionHandler:(void (^)(BOOL))completionHandler{ UIAlertController *alertController = [UIAlertController alertContr

  • cell左滑加删除置顶功能 iOS2020-08-13 14:33:42

    需求:开发下面这种样式,列表左滑有置顶和删除功能     - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {     return YES; }   -(UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsC

  • Spring boot 拾遗 —— Spring Cache 扩展 Duration2020-06-21 17:08:15

    1 前言 在上一篇我们改写了 CacheManager 使得它能够解析 cacheName#duration 动态设置 TTL,现在我们将使用预定义的 CacheResolver 来让我们的代码能有下边的表现形式:    第一个方法在注解上规定了 TTL 是 5 分钟, 第二个方法可以传入一个 duration 参数作为 TTL 2 Duratio

  • Android开发 RecyclerView.ItemDecoration2020-06-02 17:04:12

    前言   RecyclerView.ItemDecoration是用于实现RecyclerView的Item间距,当然除了实现间距更酷炫的是它可以实现一些在间距上绘制各种分割线。绘制分割线也还是一般操作,深度了解后你甚至可以实现各种时间轴,item分组标题等等功能。因为提供了onDraw方法与Canvas,所以在绘制上自由度

  • 4/24 学习总结2020-04-24 19:02:14

    今天学习了制作轮播图效果,实现了最基础的版本:单击实现轮播且不能无线滑动,即划到最后一张再点击就没有效果了 实现原理:与向listview中添加数据有很大相似之处 activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.

  • 仿微信朋友圈图片拖拽更换位置,拖拽删除2020-04-21 13:40:32

    这是使用ItemTouchHelper技术实现一个选择相册后,仿微信朋友圈图片拖拽更换位置,拖拽删除的一个功能.希望可以帮到大家. 完整项目地址:https://download.csdn.net/download/hzqit520/12342742 项目演示如下图: 主要的代码如下: mItemTouchHelper = new ItemTouchHelper(new I

  • 使用AFNetWorking 上传文件/图片2020-03-18 14:57:00

    之前项目一直用thrift。 现在改成http, 为啥没有用https,后台说他们在后台已经加密了。   用AFHTTPSessionManager中的这个方法 - (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters constructingBodyWithBlock:(void (^

  • Android开发 碎片Fragment的API全解与标准使用2020-02-20 14:03:20

    前言   我还在学习Android开发的时候发过一篇简单的入门Fragment demo代码:https://www.cnblogs.com/guanxinjing/p/9708626.html 这篇博客中使用替换replace()方法来导入Fragment。其实Fragment有更多可以深究的东西。 了解FragmentManage   FragmentTransaction的API 了解add(

  • Android Jetpack系列——ViewModel源码分析2020-01-28 18:04:48

    本文章已授权微信公众号郭霖(guolin_blog)转载。 本文章主要是对ViewModel进行源码分析,建议对着示例代码阅读文章,示例代码如下: ViewModelDemo 本文章使用的是Android SDK 29的源码分析。 定义 Android框架管理UI控制器的生命周期(例如:Activity和Fragment),Framework可能决定销毁

  • AndroidStudio关于Cannot resolve symbol 'NonNull'的解決辦法2020-01-21 09:36:20

    最近想做一个微信抢红包的App,遇到了个问题,描述如下:Cannot resolve symbol ‘NonNull’ 在网上找了不少方法,没有解决,基本原理都是没有在build.gradle的 dependencies里添加相关的内容。在targetsdk29之前的方法网上已经很多了。但是29之后需要的是: dependencies { ...

  • Android开发 ViewModel_2_了解多种的构建方式 (Factory 与 key)2020-01-15 22:04:12

    前言   ViewModel的虽然可以以很简单的 ViewModelProviders.of(getActivity()).get(ViewModel.class); 但是这只是google提供的简单构建,你需要引入下面的库才能使用: implementation "androidx.lifecycle:lifecycle-extensions:2.1.0" 但是!远远不止这样。ViewModel还可以自定义

  • iOS 自己写的对话框中加入三个输入框2019-11-16 09:54:30

      -(void)dialog:(NSString*)title okTitle:(NSString*)okTitle placeholder:(NSString*)placeholder finish:(UIAlertControllerSuccess)finish {     UIAlertController* alert = [UIAlertController alertControllerWithTitle:title message:nil preferredStyle:UIAlert

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有