关闭
当前搜索:

1.2.1 设计模式:Builder——建造者模式

Intent(意图) 将一个复杂对象的构建(construction)与其表示(representation)分离,这样同样的构建过程可以创建出不同的表示。 Motivation(动机) 一个RTF(Rich Text Format)文档转换格式的阅读器必须可以将RTF转换成多种文本格式。该阅读器必须能将RTF文档转换成无格式的ASCII文本,或者转换为可交互编辑的文本插件(text w...
阅读(15) 评论(0)

Rxjava中的observeOn和subscribeOn

示例 一个简单的HelloWorld: Flowable.fromCallable(new CallableString>() { @Override public String call() throws Exception { Log.e(TAG, "Start:" + Thread.currentThrea...
阅读(22) 评论(0)

Android API指南之动画与图形(1)——动画与图形概览

动画 Android系统框架提供了两种动画系统:属性动画和View动画。属性动画更加灵活,可以提供更多特性,因而优先选择属性动画。除了这两个,还有Drawable动画,它可以加载图片资源,一张一张地展示。 属性动画 可以让任意对象的属性动态化,包括那些不在屏幕上渲染的。该系统具有可扩展性,也可以允许你将自定义类型的属性动态化。 View动画 以前的动画系统,只能用于View。设置...
阅读(35) 评论(0)

不继承RxAppCompatActivity的情况下使用RxLifeCycle

在Android中使用Rxjava时可能会在页面退出时出现内存泄漏的情况,RxLifeCycle就是为此而生,但是作者在sample中写得很简单,只用了继承RxAppCompatActivity的案例讲解它的用法。但是用户在使用过程中,可能会因为继承了别的Activity,不好再继承RxAppCompatActivity,这种情况怎么办呢? 其实作者已经为我们提供了解决方案,只是没有在sampl...
阅读(48) 评论(0)

关于py不是内部或外部命令的问题

首先你要明白凡是这种问题只有两种可能:1. 你没有正确安装这个软件;2. 没有配置环境变量。如果你的电脑上同时安装了python2和python3,你可能想在命令行中方便地切换python2和python3. 参考知乎问题:同时装了Python3和Python2,怎么用pip?的解决方案,我们需要在电脑上使用python启动器(两个核心文件:py.exe和pyw.exe)。 但如果网友同我一样是...
阅读(109) 评论(0)

Android官方文档翻译-Broadcasts

原文链接:https://developer.android.com/guide/components/broadcasts.html广播Android应用可以向Android系统和其他Android应用发送或从它们那接收广播消息,这类似于发布-订阅设计模式。当需要关注的事件发生时这些广播就会发送出去。例如Android系统在许多系统事件发生时会发送广播,比如当系统启动或设备开始充电时。应用也可以发...
阅读(98) 评论(0)

Android Studio Clean和Rebuild的区别

偶然发现Clean会将build文件夹下generate的代码,比如用注解处理器(Butterknife、Dagger2)生成的代码清除,而Rebuild会使用注解生成器生成这些代码。...
阅读(59) 评论(0)

Dagger 官方文档之Dagger1(译文)

译者注Dagger2是在Dagger1的基础上升级开发的,所以要学习Dagger2,先了解Dagger1。下文是由Dagger1的官方文档翻译而来。 参考: 原文链接 Dagger1项目链接介绍在任何应用中最好的类是那些“干活卖力”的:如BarcodeDecoder,KoopaPhysicsEngine和AudioStreamer.这些类持有依赖,可能是一个BarcodeCameraFinde...
阅读(110) 评论(0)

大话MVP架构模式(1)-Basic

Model-view-presenter(MVP)是Model-view-controller(MVC)的派生,通常用于UI构建。在MVP中,presenter充当着“中间人”的功能。在MVP中,所有的表示逻辑都推给presenter。 model-view-presenter最早起源于90年代的Taligent——一个由Apple、IBM和Hewlett-Packard合资的企业。MVP是在...
阅读(76) 评论(0)

使用Android Studio克隆Github上的branch分支

在Android Studio上clone branch代码其实很简单两种方式: 1. 使用顶部工具栏: VCS–>Git–>Branches 首次clone branches 请选择show more: 选择分支 check out 使用底部Git工具栏,后续操作同上...
阅读(61) 评论(0)

UML类图图解

1. 类格式如图,顶格表示类名,中间隔表示属性,底格表示方法。方法和属性的可见性 符号 可见性 + public - private | protected/ | derived ~ | package2. 关系2.1 Generalization(归纳)/Inheritance(继承)我不知道Generalization为什么要翻译成泛化,个人觉得翻译得太硬了,一般人还得进...
阅读(62) 评论(0)

面向对象23个设计模式(1)——工厂方法模式

参考链接:https://en.wikipedia.org/wiki/Factory_method_pattern http://blog.csdn.net/xmlife/article/details/43491039概念在基于类的编程(class-based programming)中,工厂方法模式(the factory method pattern)是创建型模式(creational pa...
阅读(142) 评论(0)

没有UI的Fragment的妙用——截屏

最近测试了一下Android的截图工具,最开始是这么设计的:public class ScreenCaptor{ public static final int REQUEST_CAPTURE = 4; public interface OnCaptureFinishedListener { void onCaptureSuccess(Bitmap bitmap);...
阅读(106) 评论(0)

java.lang.NoClassDefFoundError: com/android/tools/lint/detector/api/Detector$UastScanner

好长时间没更新APP了,结果今天打包报错如下,百思不得其解:Could not load custom rule jar file /home/user/.android/build-cache/317bbf7182688f2c4e85a24d078fe2ab62ffb2a0/output/jars/lint.jar java.lang.NoClassDefFoundError: com/andro...
阅读(275) 评论(0)

获取TextView中文本的宽度

在写一个自定义Button,希望图片宽度可以根据文本宽度来定,找到如下方法可以得到文本宽度:Layout.getDesiredWidth(getText(), getPaint());...
阅读(259) 评论(0)

Canvas绘制圆角矩形时的圆角粗边问题

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ViewCompat.setBackground(findViewB...
阅读(191) 评论(0)

关于View设置selector不支持state_pressed的问题

在网上找了很多方案,都不能解决问题,最后尝试把TextView换成Button就能支持state_pressed了,换回TextView还是不行,原来TextView不支持selector的state_pressed,要添加pressed的效果的话,建议使用button。 以前一直以为Button和TextView没多大区别,今天才发现,在这上面区别大了去了。记一笔,往后面踩坑的人能看到这篇文章。...
阅读(212) 评论(0)
68条 共4页1 2 3 4 下一页 尾页
    个人资料
    • 访问:89882次
    • 积分:1544
    • 等级:
    • 排名:千里之外
    • 原创:56篇
    • 转载:2篇
    • 译文:8篇
    • 评论:45条
    最新评论