Android kotlin基础语法

本文介绍了Kotlin中的for循环语句,以及Java和Kotlin在处理`onActivityResult`时的区别,同时详细讲解了如何在Android中嵌套Fragment以及Kotlin中的@JvmOverloads注解的用法。作者还强调了系统化学习和面试准备的重要性,特别针对Android开发工程师的成长路径给出建议。
摘要由CSDN通过智能技术生成

5、kotlin循环语句


for (a in 0…19) {

barEntityList.add(internentBarEntity)

}

6、onActivityResult,requestCode请求码,resultCode返回码


java是:

put

Intent intent = new Intent(MainActivity.this,TwoActivity.class);

startActivityForResult(intent,66);//66是请求码

get

@Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); String result = data.getExtras().getString("result");//得到新Activity 关闭后返回的数据 }

kotlin是:

put

startActivityForResult(Intent(this@MainActivity, Main2Activity::class.java),54)

get

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {

super.onActivityResult(requestCode, resultCode, data)

when (resultCode) {

3 -> {

val result = data!!.getExtras().getString(“result”)//得到新Activity 关闭后返回的数据

}

}

}

java返回数据:

Intent intent = new Intent();

//把返回数据存入Intent

intent.putExtra(“result”, “My name is meixi”);

//设置返回数据

setResult(33, intent);

//关闭Activity

finish();

kotlin返回数据:

val intent = Intent()

//把返回数据存入Intent

intent.putExtra(“result”, “My name is meixi”)

//设置返回数据

setResult(3, intent)

//关闭Activity

finish()

注:如果是在fragment调用startActivityForResult跳转。则请求码返回时是随机数,而不是原请求码

7、activity嵌套fragment.kt


1、创建fragment.kt

class BlankFragment : Fragment() {

private var mTitle: String? = null

companion object {

fun getInstance(title: String): BlankFragment {

val fragment = BlankFragment()

val bundle = Bundle()

fragment.arguments = bundle

fragment.mTitle = title

return fragment

}

}

override fun onCreate(savedInstanceState: Bundle?) {

super.onCreate(savedInstanceState)

}

override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,

savedInstanceState: Bundle?): View? {

return inflater.inflate(R.layout.fragment_blank, container, false)

}

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {

super.onViewCreated(view, savedInstanceState)

LgqLogutil.e(“11”)

mText.text = “ss22”

mText.setOnClickListener {

Log.i(“lgq”, “fff”);

}

}

}

2、activity加载fragment

private var mBlankFragment: BlankFragment? = null

val transaction = supportFragmentManager.beginTransaction()

BlankFragment.getInstance(“title”).let {

mBlankFragment = it

transaction.add(R.id.frame,it,“tag”)}

transaction.commitAllowingStateLoss()

Kotlin中@JvmOverloads的使用方法

=========================

Overload翻译为重载,JvmOverloads即重载方法

在Kotlin中@JvmOverloads注解的作用就是:生成多个重载方法,这样方便我们调用,可以省掉一些不关心的参数可以修饰方法或者类

代码解析:

普通kotlin语法

class Mytext : TextView {

constructor(context: Context) : super(context) {}

constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {}

constructor(context: Context, attrs: AttributeSet, defStyleAttr: Int) : super(

context,

attrs,

defStyleAttr

)

}

等同于如下@JvmOverloads语法

class Mytext @JvmOverloads constructor(

context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = com.google.android.material.R.attr.materialCardViewStyle

) : TextView(context, attrs, defStyleAttr)

关于面试的充分准备

一些基础知识和理论肯定是要背的,要理解的背,用自己的语言总结一下背下来。

虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,我能明显感觉到国庆后多了很多高级职位,所以努力让自己成为高级工程师才是最重要的。

好了,希望对大家有所帮助。

接下来是整理的一些Android学习资料,有兴趣的朋友们可以关注下我免费领取方式

①Android开发核心知识点笔记

②对标“阿里 P7” 40W+年薪企业资深架构师成长学习路线图

③面试精品集锦汇总

④全套体系化高级架构视频

**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水!

[外链图片转存中…(img-4VbHPvga-1714282897041)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 29
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值