自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ckwccc的博客

成长的海绵

  • 博客(22)
  • 收藏
  • 关注

原创 java.lang.IncompatibleClassChangeError

java.lang.IncompatibleClassChangeError: The method 'com.ckw.zfsoft.ckwapparchitecture.modules.secondmodule.CupFragment com.ckw.zfsoft.ckwapparchitecture.modules.secondmodule.CupFragment.newInstance()

2017-12-28 13:57:24 1690

原创 IllegalArgumentException: No injector factory bound for Class

Caused by: java.lang.IllegalArgumentException: No injector factory bound for Class<com.ckw.zfsoft.ckwapparchitecture.modules.firstmodule.HeartFragment> ...

2017-12-27 17:50:27 6547

原创 Python初体验

目前Python分为2.7和3.3版本,两者的程序不兼容,以2.7版本学习为主。 Python编译器下载地址:www.python.org 需要配置环境变量,在系统变量的path路径下添加python.exe的路径,例如C:\Python27配置好了以后就可以通过cmd进入python的交互式命令行界面。 进入输入: python在cmd下输入:python 即可 退出输入: exi

2017-12-26 20:17:35 378

原创 由Static引起的内存泄漏问题

什么是内存泄漏? 通俗地讲,就是程序在向系统申请使用内存后,在使用完以后并没有释放内存,而导致该内存一直被占用。直到程序结束,我们也无法再使用这边内存。这里说一下遇到的一个由static关键字引起的内存泄漏问题。 通过内存泄漏检测工具,我发现我前几天写的代码中,有某一个内存泄漏发生了:某工具类一直持有某个Activity对象。我翻了一下代码,发现是这样的: 我有某个ScreenUtil工具类,

2017-12-26 15:56:43 3535

转载 ConstraintLayout完全解析

本篇文章的主题是ConstraintLayout。其实ConstraintLayout是Android Studio 2.2中主要的新增功能之一,也是Google在去年的I/O大会上重点宣传的一个功能。我们都知道,在传统的Android开发当中,界面基本都是靠编写XML代码完成的,虽然Android Studio也支持可视化的方式来编写界面,但是操作起来并不方便,我也一直都不推荐使用可视化的方式来编

2017-12-26 14:21:25 266

原创 我的Kotlin学习之旅(六)

扩展 初次见到扩展的概念的时候,确实是有点不太理解的,完全搞不懂这是个什么东东。 翻译文档上是这么说的: 与 C# 和 Gosu 类似, Kotlin 也提供了一种,可以在不继承父类,也不使用类似装饰器这样的设计模式的情况下对指定类进行扩展。我们可以通过一种叫做扩展的特殊声明来实现他。Kotlin 支持函数扩展和属性扩展。 好吧,没怎么看懂,就只能通过具体的例子来理解它了。这里试一下函数扩展

2017-12-25 13:48:56 812

原创 我的Kotlin学习之旅(五)

学完了函数,就不得不提接口,在Java中,由于只能单继承(extends),很多拓展的功能就必须使用接口来实现。 例如在Android的mvp模式中,需要展示的界面(activity或者fragment)需要的网络数据,一般都是通过实现特定的view来获得从服务器获取的数据。这里的特定view就是一个接口,接口里面可以是抽象的方法或者方法的实现,如果是抽象方法,实现view的地方需要实现view的

2017-12-25 10:43:33 608

原创 仿ios的PickerView

首先看一下效果:这个一个点击按钮弹出的dialog,中间是一个类似于ios的PickerVew。 接下来看一下它是怎么实现的: 具体的pickerView,我使用了一个第三方写的,这里就不贴上代码了。 主要是看一下,dialog与pickerView的结合使用: 首先是这个布局:中间是一个PickerView<?xml version="1.0" encoding="utf-8"?><Li

2017-12-23 14:07:11 680

原创 自定义控件之AddItemView

一个需求,直接上gif图:(1)点击 添加选项按钮,会增加一个item (2)然后切换类型的时候,需要清除所有的item,添加另一种类型的item下面来完成这个自定义控件,让它继承自ViewGroup public class CustomAddViewLayout extends ViewGroup 构造函数的,可以简单地写一写: public CustomAddViewLayout(Co

2017-12-19 20:24:51 498

原创 Attempt to read from field 'int android.support.v4.app.Fragment.mContainerId' on a null object refer

错误信息: Caused by: java.lang.NullPointerException: Attempt to read from field 'int android.support.v4.app.Fragment.mContainerId' on a null object reference

2017-12-18 10:01:04 3250

原创 我的Kotlin学习之旅(四)

类和继承1.类 在Kotlin中类也是用class表示,与Java不同的是,如果这个类没有内容,可以省略这对大括号 可以只写:class Person2.构造函数 在 Kotlin 中类可以有一个主构造函数以及多个二级构造函数。主构造函数是类头的一部分:跟在类名后面 例如:class Person constructor(name: String) {}这个主构造函数有一个形参,类型是St

2017-12-14 20:27:20 2111

原创 底部导航栏中间突出范例

首先先看一下实现的简单布局: 实现这个布局的核心是要在根布局添加该属性android:clipChildren="false"这个属性的意思是是否限制子布局在其范围内,默认是true,表示限制1.xml代码:这里放了五个LinearLayout配合上面的容器进行切换<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/a

2017-12-13 14:40:46 1321

原创 java.lang.IllegalStateException: commit already called

项目中的某个模块需要用到底部导航栏和上面的几个Fragment切换逻辑,写完之后运行的时候报错:java.lang.IllegalStateException: commit already called原因是我将FragmentTransaction 作为全局变量使用,而FragmentTransaction transaction的机制是只能commit一次,虽然我在类中有很多方法都用到了Fra

2017-12-13 11:01:43 319

原创 java.io.IOException: Can't read ...((No such file or directory))

今天需要将公司的一个Eclipse上的项目打包成apk,万万没想到,遇到这么一个坑,先直接贴报错代码 java.io.IOException: Can't read [E:\eclipse-workspace\*****\libs\alipaySDK-20170922.jar] (No such file or directory)[2017-12-12 10:21:54 *****] a

2017-12-12 10:52:40 2532

原创 更新github项目上的代码

最近经常要更新github上已有项目的代码,这里对一些命令进行记录1.查看状态:git status2.从远程拉取最新代码(一般不是手贱在github上修改readme文件,如果没这一步会报错)git pull origin master3.添加所有代码到缓存区:git add .4.提交代码:git commmit -m "更新说明"5.将更新

2017-12-11 15:47:54 946 3

原创 Error:svn: E175002: connection refused by the server svn

公司有一些在Eclipse上的老项目,最近在某个项目上写完代码之后,按照日常更新操作后出现了报错, 我这里应该是本地丢失了一些用户信息,例如eclipse中没有了我的svn账号信息,所以一直导致更新代码,上传代码错误Error:svn: E175002: connection refused by the server svn尝试了网上的多种方法之后,终于找到一种可行的方法,在此记录...

2017-12-08 15:06:36 6410 2

原创 Kotlin使用EasyRecycleview

最近在github上发现一个很好用的基于RecyclerView写的第三方控件,叫做EasyRecycleview,这个控件使用起来很方便,功能也挺强大的,就想着用Kotlin来使用一下它1.引入//引入第三方核心控件compile 'com.jude:easyrecyclerview:4.4.2'// 悬浮控件compile 'com.github.clans:fab:1.6.0'2.

2017-12-06 19:48:57 495

原创 Error:Flavor 'prod' has no flavor dimension

最近在svn上拉取项目的时候,出现了Error:Flavor 'prod' has no flavor dimension的问题,原因是因为这个项目的build.gradle中classpath 'com.android.tools.build:gradle:2.3.3'版本太低 将其换成自己项目的,例如我的是classpath 'com.android.tools.build:gradle:3.

2017-12-06 16:35:33 12575 2

原创 我的Kotlin学习之旅 ( 三 )

这里先简单的说一些Kotlin的习惯用语。 1.数据类 只保存数据的类,在 kotlin 中这样的类称之为 data 类,用 data 标注:data class User (val userName: String,val age: Int)这里可以直接省略一对大括号,data类必须要有一个主的构造函数 值得注意的是: 1.主构造函数应该至少有一个参数,否则代码会直接报错 2.主构造函数

2017-12-04 16:58:17 769 1

原创 我的Kotlin学习之旅(二)

在Kotlin语言中文站学习了一段时间,这是第二次看文档,第一次简单的看了一遍,等真正要用的时候又发现不真正实践的话,学习的效果并没有很好,所以在第二遍看文档的时候,自己手写做了一遍笔记,然后接着写这个学习之旅的博客 首先是Kotlin的基本语法:1.定义函数:fun sum(x: Int, y: Int): Int { return x + y }这个函数有两个Int类型

2017-12-01 15:15:46 770

原创 Dagger2使用

Dagger2的引入(与retrofit和rxjava一起使用): 在app的build.gradle中加入 //network compile "com.squareup.retrofit2:retrofit:$rootProject.ext.retrofitVersion" compile "com.squareup.retrofit2:converter-gson:$r

2017-12-01 14:18:13 689

原创 简单的MVP写法(二)

前面已经写了简单的MVP写法(一),现在介绍另外一种MVP的写法。 这种写法分为三层 Model :public abstract class BaseModel {}View :public interface BaseView{ void onError(String e); void setPresenter(); Activity getCurrentActivity(

2017-12-01 09:59:38 546

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除