android
我毕竟是android出身,说是讲kotlin,其实讲的还是android,有朋友也是同行的话, 希望给你们未工作的朋友理清思路,工作了的朋友能在我讲的不对的地方,多多指点一下,我本身也是一个不太爱学习的人,讲的偏杂,都是我在工作中有所感悟的,什么时候有感悟了,什么时候就更新一下.
kotlin
17年谷歌在官方指定了kotlin为android开发的第一语言,这个时候kotlin统治的时代就要开始了,那么kotlin是一个什么样的语言呢?从我的角度出发,我认为kotlin的语言特性是很有意思,它称是简洁性,空安全,很多特性,其实也无非就是一个oop语言,说到oop,也叫面向对象语言,也就是封装,继承,多态.
封装
人为什么要封装东西呢? 其实就是一个思路的问题,比方说我要去动物园,这是很繁忙的项目,要打车,选地址,上车,买票,最后进入了动物园,但是呢,把这些东西都放一个方法里,你离职了,注释也不加,后来人怎么看嘛.前面就稀里哗啦的看到打上车了,一看最后,去动物园了.怎么去的,不知道,还得细细摸索,所以就有封装的必要性了,对代码的思路理解也很重要,每一步,比方打车(选地址,上车,下车),封装一下,买票也封装一下,一个去动物园的方法里就2个小方法,这样多清晰啊.
跑题了,写2个demo吧
下图封装 text 粗体字
/**
* 设置文本加粗样式并返回一个 [SpannableString] 对象
* @param text 要设置样式的文本
* @return 设置了加粗样式的 [SpannableString] 对象
*/
private fun setBoldText(text: CharSequence): SpannableString {
val spannableString = SpannableString(text)
spannableString.setSpan(StyleSpan(Typeface.BOLD), 0, text.length, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)
return spannableString
}
下图封装 Glide ,kotlin的扩展函数
/**
* 使用 Glide 加载图片并设置到 ImageView 中。
* @param url 图片的 URL 或资源标识符。
* @param placeholderResId 占位符资源 ID,用于在图片加载过程中显示。
* @param errorResId 加载失败时显示的占位符资源 ID。
*/
private fun ImageView.loadImageWithGlide(url: String, placeholderResId: Int? = null, errorResId: Int? = null) {
val requestBuilder = Glide.with(context).load(url)
placeholderResId?.let { requestBuilder.placeholder(it) }
errorResId?.let { requestBuilder.error(it) }
requestBuilder.into(this)
}
对了,还要说一下,上图有一个常用的叫 ?.let { }
这是个什么意思呢?他的意思就是 ,为空就不执行,不为空就执行,相当于 if(xx != null){ }
写博客好麻烦,写十分钟就累了,所以,改日再见,持续更新.