自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

文远

一日磨一剑,文长武且远

  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 Kotlin 入门第九天——继承、接口、扩展

一、继承1. 定义一个Base类:open class Base(p: Int) { open var x = 0 open val y = 0}定义一个子类Child,继承Base类,要注意,这个子类没有构造函数. 子类没有构造函数,必须在每一个二级构造函数中用super关键字初始化基类,或者在代理另一个构造函数。class Child(p: Int) : Base(p) {}引用Child方式:val child = Child(100)...

2020-09-07 18:24:04 416 1

原创 Kotlin 入门第八天:类——嵌套类、内部类、匿名内部类

1、 首先梳理一下类的修饰符classModifier:abstract 抽象类final 不可继承类,默认是该属性enum 枚举类open 可继承类annotation 注解类accessModifier:private: 仅在同一个文件中可见protected:仅在同一个package或者子类中可见public:所有地方可见internal:同一模块中可见2、嵌套类class OuterClass { private val bar: In

2020-07-30 21:03:14 227

原创 Kotlin 入门第七天:构造函数 —— 主构造器、次构造器

1、 主构造函数主构造器中不能包含任何代码,初始化代码可以放在初始化代码段中,初始化代码段使用 init 关键字作为前缀。class ConsClaz constructor(name: String) { init { println("Name is : $name") }}2、次构造函数可以理解成二级构造函数,主要有以下三种方式class Person() { constructor(parent: Person) : this() {

2020-07-30 20:51:36 816 1

原创 Kotlin 入门第六天:类和对象——类及属性、方法的定义和使用

1、类的定义class Class1 { var name: String = "张三" fun foo() { println(name) } }2、类的get 和 set 方法class Class1 { fun foo() { println(name) } var name: String = "张三" get() = field.toUperCase() //将比昂亮

2020-07-30 20:35:09 156

原创 Kotlin 入门第五天:循环控制——For、while、for each、Loop

1、For 循环 代码示例:首先生命了一个数组items,采用for 循环遍历这个数组并打印出来。第二个for循环,打印的时候用到了 $ 引用,在字符串一节中(Kotlin 入门第四天:基本数据类型及其转换 —— 字符、bool、数组、位操作符)我们已经了解过。//for 循环 fun fOr() { val items = listOf("apple", "banana", "kiwi") for (item in items) {

2020-07-28 20:50:19 235

原创 Kotlin 入门第四天:基本数据类型及其转换 —— 字符、bool、数组、位操作符

1. 位操作符shl(bits) - 左移位,对应java <<shr(bits) - 右移位,对应Java >>ushr(bits) - 无符号右移位,对应Java >>>and(bits)- 与,&&or(bits)- 或,||xor(bits)- 异或inv()- 反向2. 字符在kotlin中,Char 不能直接和字符操作,Char必须是单引号包含起来的,比如 ‘a', ’0‘。这点和Java不同fu

2020-07-27 20:53:58 495

原创 Kotlin 入门第三天:基本数据类型及其转换

double 的默认写法var a = 123.5var b = 123.5e10var oneMillion = 1_000_000var cardNumber = 123_5678_9012_3456Lvar hexBytes = 0xFF_EC_ED_SEvar bytes = ob1101010010_01101001_10010100_10010010两个数字的比较:1)“====”,需要值、对象地址都相等才可以返回true;2)“==”,只需要值相等便可以返回true

2020-07-22 20:39:46 228

原创 Kotlin 入门第二天:变量、?判空、区间 及类型转换

Kotlin 入门第二天:变量、?判空、区间 及类型转换变量可变变量var name: String = “”不可变变量val name: String = “123”? 判空逻辑var age: String? = “23” //变量name可以为空/抛出空指针异常/val ages = age!!.toInt()/*? 表示不作处理,返回null*/var ages1 = age?.toInt()/*第一个?表示空不处理,第二个表示空的话,返回-1* 最终表示,如果age为空,

2020-07-15 20:39:54 155

原创 Kotlin 入门第一天:函数实现的几种方式

一、简单函数fun testPrint() { Log.i("@@@", "Hello World, 我的Kotlin的第一个函数") }二、带返回值的函数 —— 3 中实现方式,以返回Int为例 /** * public 方法必须写出返回类型 */ public fun sum3(a: Int, b: Int) = a + b Public 必须写出返回类型 fun sum2(a: Int, b: Int) = a +.

2020-07-14 20:36:48 172

原创 是时候梳理一下Kotlin的知识点了

是时候梳理一下Kotlin了很不喜欢将平时的学习记录成博客,就像流水账一样,觉得没有深度,但是深奥的东西就那么些,多数时间的工作中,用到的仍是基础知识。我是从2017年开始使用Kotlin写代码,转眼已是3年,今天突然想起,自己有一天不写代码了,曾经翻阅的资料是不是就都消失浪费了,猛然间,觉得,将基础知识梳理一下,将平时遇到的难点、踩过的坑也一并分享出来,与大家共同学习和进步,若能在某个不经意间帮助到一些人,则所费力气,也是值得的,自己也就心满意足了。...

2020-07-14 20:22:26 145

原创 Android 微信分享好友 the content you sharing have security risk

我的分享失败,最后发现不是因为签名,不是因为内容有风险,而是因为,内容含有小程序相关的信息或者字段,比如type等,我将其修改后,就可以分享给好友了。(我开发的应用,并未绑定小程序,因此内容不能含有小程序,但是IOS貌似是可以,Android不可以)...

2019-12-27 10:26:20 228

原创 Android Studio-Didn't find class XXX on path: DexPathList [zip file "/data/app/packagename/base.apk]

记录自己尴尬的一次低级错误。我出现的这个问题,Clean 没有用,删除build 和.gradle 文件也不凑效,最后检查发现,是因为自己使用kotlin编码,没有进行kotlin配置导致的。...

2019-12-09 13:48:36 381

原创 NDK 入门与进阶—第一个NDK程序(一)

首先检查配置环境,我这里使用的是AndroidStudio - 3.4.2 版本。打开SDK Tools,确保以下已经全部下载安装:第二步,我们需要下载OpenCV资源,链接在此:https://opencv.org/opencv-3-2/,下载Android SDK,将下载后的sdk文件解压,,打开文件OpenCv-android-sdk ->sdk -> native ...

2019-08-30 16:34:17 613

原创 Android Must use a native order direct Buffer

使用GLS开发时报出“Must use a native order direct Buffer” 的bug,记录下解决过程,供以后回顾。 首先源码 public static IntBuffer makeIntBuffer(int[] arr) { ByteBuffer bb = ByteBuffer.allocate(arr.length * 4); ...

2018-12-11 17:17:53 745

原创 android fragment startActivityforResult 不执行回调

1、resultCode 不能小于02、Activity的启动方式是不是singleTask,如果是,则在setResult的时候,会默认有个取消动作,这个在小米4低版本手机表现的非常明显(我就是这个原因)3、fragment.startActivityForResult,不能写成了activity.startActivityForResult以上,记录,供后期自己查阅使用...

2018-08-23 19:06:45 791

原创 MAC -bash: ls: command not found

1. cd ~ 进入home2. touch .bash_profile 创建配置文件,如果之前有,此步忽略3.open .bash_profile 打开文件,在export Path = ${Path}  中添加 “/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin”4.保存文件:source .bash_profile5.万事大吉

2017-12-30 12:02:15 2605

原创 Android Studio Could not determine java version from '9.0.1'.

百度Google各种无效,最后将Java 9.0.1 卸载删除,换上1.8.0_151 版本的jdk就可以了。另外,AndroidStudio官方提醒: 升级到3.0后使用Java 1.8以上版本可能会出现已知的不稳定问题,最好使用不低于1.6版本的jdk。具体链接等我找到再放这里。Mac 电脑需要注意,如果把AndroidStudio升级到了3.0.1以上了,一定要把jdk-9.0.1删

2017-12-28 17:25:39 8485

原创 ViewStub 和 include 引用的view 根布局宽高失效

ViewStub 和 include 中 根view设置宽高都等于 wrap_content的问题 如下: <ViewStub android:id="@+id/stub_normal" android:layout_width="match_parent" android:layout_height="wrap_co

2017-07-04 20:55:22 2486

原创 CoordinatorLayout 与Behavior

CoordinatorLayout 与AppbarLayout、 Behavior

2017-07-04 20:43:59 300

原创 EditText 动态设置inputtype为小数

EditText 动态设置inputtype为小数

2017-07-04 20:42:23 1735

原创 Android Elevation 无效分析

1. 控件必须设置背景色,且不能为透明。2. 阴影是绘制于父控件上的,所以控件与父控件的边界之间需有足够空间绘制出阴影才行。3. 有网友提出图片尽量使用.png, 防止图片过大导致oom或者elevation失效4. 经过本人测试,除了上述原因外,还有:background是图片时无效、background直接设置具体颜色值无效如:#ffaacc,background是shape时效果

2017-06-19 17:56:09 5508

原创 Android移动支付——微信支付

最近在做国内外移动支付这一块,初次尝试,踩了很多坑,另外个人感觉微信支付的开发文档并不是太好,重新整理一下,以供回顾和分享:微信支付的必须在Release环境下测试有效微信支付/登陆必须创建名为“wxapi”的包,并在这个包下实现WXEntryActivity/WXPayEntryActivity–(登陆/支付)两个Activity,这一步demo里面会有,直接拷贝后重定义自己需要的逻辑就可以

2016-12-03 17:29:41 488

转载 Android Dialog 设置背景透明

Android Dialog转载于:http://www.cnblogs.com/roemin/articles/3792561.html关键代码dialog.getWindow().setBackgroundDrawable(new BitmapDrawable()); 或者dialog.getWindow().setBackgroundDrawableResource(andr

2016-11-04 11:36:15 1535

原创 Android-TextView换行排版混乱-允许设置SpannableString

首先感谢两个网站提供的灵感: http://www.it165.net/pro/html/201405/14606.html 另一个忘了地址了,哪天找出来加上1.概述 TextView在换行时遇到首字符为字母、符号、汉字等时会产生提前换行、排版混乱等,看图 两个TextView都是正常的,当第一个有字母开头时,提前换行

2016-01-14 15:10:01 8641

原创 移动开发-Android-tab效果之Fragment-1

本文借鉴了网上众大神的思路、代码,通过整合,归纳出Android移动端Tab切换效果的集中实现方式,包括Viewpager+Fragment、FragmentTransaction以及传统方式等多种实现路径,还有多种实现后的效果,以此希望和众多初学者一同进步、交流.因此文章虽为自己归纳,但内容不是完全原创;虽然内容借鉴了众大神的,但是归纳和整理,皆为自己完成,这是第一篇博客,后续的归纳整理

2015-07-30 14:40:40 364

Android-TextView换行排版混乱-允许设置SpannableString

解决TextView自动换行的排版混乱 允许设置SpannableString等特殊属性 至繁归于至简

2016-01-14

jsp分页的实现

不许转载使用,请尊重作者血汗 简单实用,代码少、易维护、易理解,可应用于实际开发或入门学习

2014-07-11

java IO流文件详例

io流是任何一门语言中都非常重要的技术,繁琐的课本介绍非但不能够解决问题,还会造成很多的混淆 该文件将各个io流功能放到一起呈现,方便新手对比学习,当场实践,也方便老手进行全面的复习回顾。简洁易懂、涵盖全面、代码清晰对比呈现,是此资源的重要特征

2011-06-27

空空如也

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

TA关注的人

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