[置顶] SimpleCommand(四) 上传文件/视频功能

上传文件的核心功能主要是在UploadCommand.java中实现使用步骤:1 创建UploadCommand的构建类BuilderUploadCommand.Builder builder = new UploadCommand.Builder(); 2 通过构建类设置UploadCommand的各种属性builder.domain("上传地址的域名")                .pat...
阅读(558) 评论(0)

[置顶] SimpleCommand(三) ImageLoader API详细介绍

框架github地址: SimpleCommand框架ImageLoader API 详细介绍在ImageLoader中有以下几个不同的构造器:/** * 注意: 次构造器不支持下载进度提示功能 * @param context * @param withCache 是否支持缓存 * false--不带缓存 *...
阅读(446) 评论(0)

[置顶] SimpleCommand(二) 图片下载

框架github地址: SimpleCommand框架简介:SimpleCommand是一款轻量级框架。框架很小也很容易理解。使用这款框架能实现的功能主要是快速集成网络请求、图片请求、文件操作等各种比较耗时的操作。对于网络图图片请求,内部使用的是OkHttp实现使用场景:此框架并不适合于短时间内有大量请求的场景,比较适合于并发执行4~6个异步请求工程目录介绍:在SimpleCommand整个工程目录...
阅读(547) 评论(0)

[置顶] SimpleCommand(一) 框架介绍以及简单使用

框架github地址: SimpleCommand框架简介:SimpleCommand是一款轻量级框架。框架很小也很容易理解。使用这款框架能实现的功能主要是快速集成网络请求、图片请求、文件操作等各种比较耗时的操作。对于网络图图片请求,内部使用的是OkHttp实现使用场景:此框架并不适合于短时间内有大量请求的场景,比较适合于并发执行4~6个异步请求工程目录介绍:在SimpleCommand整个工程目录...
阅读(782) 评论(0)

[置顶] 自定义ViewGroup实现多个单页面上下滑动效果

阅读过自定义ViewGroup实现仿淘宝的商品详情页的童鞋,应该都了解了ViewGroup中onMeasure、onLayout、onTouchEvent等相关方法的使用。在介绍仿淘宝商品详情页时,我们提到过现在网上很多实现方法是使用ScrollView嵌套两个ScrollView。而我也提到过这样实现的缺陷,很难进行扩展。而使用自定义ViewGroup的话就可以根据自己的需要扩展功能了。今天我们介...
阅读(920) 评论(9)

[置顶] 自定义ViewGroup实现仿淘宝的商品详情页

最近公司在新版本上有一个需要, 要在首页添加一个滑动效果, 具体就是仿照X宝的商品详情页, 拉到页面底部时有一个粘滞效果,  如下图 X东的商品详情页,如果用户继续向上拉的话就进入商品图文描述界面: 刚开始想拿来主义,直接从网上找个现成的demo来用, 但是网上无一例外的答案都特别统一: 几乎全部是ScrollView中再套两个ScrollView, 或者是一个LinearLay...
阅读(25510) 评论(71)

一场由Java堆污染(Heap Pollution)引发的思考

1 Kotlin的数组比Java的更加安全,可以避免Heap Pollution 2 Kotlin代码比Java更加简洁 3 结论:赶紧Kotlin搞起...
阅读(231) 评论(0)

深入理解Java与Kotlin的泛型(Generic Type)和型变(Variance)

有很多编程语言(尤其是面向对象语言)都有子类型(SubType)的概念,通过这一概念可以让我们在业务上实现一种阶级。”A Cat is-An Animal”。提现在代码中可以如下所示: JavaInteger integer = new Integer(1); Number number = integer;Kotlinval int: Int = 10 val number: Number =...
阅读(90) 评论(0)

玩转Kotlin--彻底弄懂Lambda和高阶函数

3语法3规定 Lambda表达式语法: 1 lambda 表达式总是被大括号括着; 2 其参数(如果有的话)在 -> 之前声明(参数类型可以省略); 3 函数体(如果存在的话)在 -> 后面 在 Kotlin 中有一个约定,如果函数的最后一个参数是一个函数,并且你传递一个 lambda 表达式作为相应的参数,你可以在圆括号之外指定它 if the last parameter of a...
阅读(12844) 评论(3)

Kotlin基本类型自动装箱的一点问题

问题在Kotlin官方文档结束基本类型时,给我们说明了在有些情况下会对基本类型自动进行装箱操作。 但是具体是如何进行装箱,以及何时进行装箱缺没有提供详细介绍。只是提供了一个例子,如下:val a: Int = 10000 print(a === a) // Prints 'true' val boxedA: Int? = a val anotherBoxedA: Int? = a print(box...
阅读(3665) 评论(5)

Dagger2 总结

Dagger 就是现在一个比较火的依赖注入器框架。它使用的预编译期间生成代码完成依赖,而不是用的反射。这一点很重要,正因为这点它并不会造成运行时效率低下,只是增加了一点编译的负担。Dagger 用法非常灵活,有太多的注解需要学习。但是Inject,Component,Module,Provides是dagger中的最基础最核心的知识点。奠定了dagger2的整个依赖注入框架。所以学习Dagger时,...
阅读(472) 评论(0)

Dagger2 进阶

在之前的几篇文章中,已经了解了Dagger为何物, 如何用,使用中可能出现的问题。其中在使用环节只是简单介绍了使用@Inject注解添加依赖注入。但是@Inject有一个先天性缺陷–对于第三方jar包中的类,我们无法在其构造器中添加@Inject注解例如我们在使用OkHttp发送网络请求的时候,经常会使用OkHttpClient类。OkHttpClient okHttpClient;@Overrid...
阅读(387) 评论(0)

Dagger2初体验的一点思考与实践

上一篇介绍了如何简单使用Dagger2,主要介绍了@Inject注解和@Component注解。再来重新理一下使用流程: 在MainActivity中使用@Inject注解变量User 在User.java的构造器中添加@Inject注解 创建类UserComponent并使用@Component注解此类 在UserComponent中添加bind(MainActivity activity)方法...
阅读(892) 评论(3)

Dagger2 初体验

上一篇了解了Dagger是什么东西,以及使用它的优点。 接下来就来写个最简单的demo试试水。先来看下在不使用Dagger的情况下, 在一个Activity中使用User bean类的方式,很简单如下所示:User.java/** * Created by Danny on 17/8/30. */public class User { private String name; pri...
阅读(406) 评论(2)

Dagger2 什么鬼 ?

注意:此篇文章完全是理论知识楔子在深入了解Dagger之前, 需要对以下2个概念有所理解 依赖注入: 就是目标类(目标类需要进行依赖初始化的类,下面都会用目标类一词来指代)中所依赖的其他的类的初始化过程,不是通过手动编码的方式创建,而是通过技术手段可以把其他的类的已经初始化好的实例自动注入到目标类中 java注解(Annotation): Annotation(注解)是JDK1.5及以后版本引入...
阅读(328) 评论(1)

Dagger2 大全

虽然项目中一直在使用MVP + Dagger2 的架构设计。 但是一直到最近才有心思去看一下这个Dagger2究竟是一个什么东东, 一番折腾下来之后感觉还是有一些收获, 索性撸一系列 也当做是一个总结此系列文章的思路可以分为以下几个: Dagger2 什么鬼 ?? Dagger2 初体验 Dagger2初体验的一点思考与实践 Dagger2 进阶 Dagger2 总结...
阅读(321) 评论(0)

Android TextView去掉paddingTop和paddingBottom

最近项目中需要用libgdx渲染一个Android的TextView, 但是绘制出来的TextView总是默认带有paddingTop和paddingBottom, 如下图所示: 网上有很多解决方案,例如在xml中设置如下属性:android:lineSpacingMultiplier="0.8" android:includeFontPadding="false"或者设置margin为负值等等。...
阅读(452) 评论(0)

Android使用Libgdx渲染Html标签

在使用Libgdx的过程中,有时候会遇到这样的需要, 后端返回给我们的是html tag,比如如下:italic bold italic+bold italic+bold+un对于以上Html tag,如果使用android自带的控件TextView可以通过setText(Html.from(“”))的方式直接设置显示内容。效果如...
阅读(345) 评论(0)

LibGdx将ShapeRenderer和Path结合使用,实现填充效果

在日常使用LibGdx的过程当中,经常会遇到填充一条线或者一个圆圈的需求,如上图中每一个圆圈都由一个path连接,需求就是让每一条path都从0自动的绘制响应的长度。如果有这种需求就可以考虑使用Path + ShapeRenderer结合来实现。 具体demo代码示例如下:package com.ef.smallstar.matching_text_to_text;import com.badlog...
阅读(347) 评论(0)

设置Actor在Stage的顶端

在使用Libgdx的过程当中,经常会碰到这样的问题 : 因为Libgdx的渲染顺序问题,当拖动前一个add的Actor与后添加的Actor重叠时,前添加的Actor会显示在后添加Actor的后面。 可以使用以下操作将当前正在操作的Actor置顶inputListener = new InputListener() { @Override public...
阅读(317) 评论(0)

ImageView屏幕适配一点新的心得

1 在res中的dpi、xhdpi、xxhdpi中分别放入UI设计的响应大小的图片2 尽量使用RelativeLayout以上几步可以做到ImagView位置的屏幕适配,但是Android设备有很多是屏幕大小一样,但是density不一样的,也就会造成在有些相同大小的屏幕上,有些图片大而有些图片非常小3 针对Size在各个屏幕density不一的情况,可以先获取screen width、height...
阅读(435) 评论(0)
127条 共9页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:285183次
    • 积分:4251
    • 等级:
    • 排名:第7898名
    • 原创:117篇
    • 转载:9篇
    • 译文:1篇
    • 评论:196条
    博客专栏
    最新评论
    Android Transition
    Transition详解,Activity&Fragment Transition详解, Shared Element Transition详解