初步理解android studio里java(generated)

 总结在最下面

 最近学习android studio的时候,发现了一个问题,就是为什么有的项目有java(generated),res(generated)。而有的项目里就没有,从网上进行搜索之后了解到当使用一些库的时候,例如Dagger(目前不知道是什么),Room(也不知道是个啥),Navigation组件(终于见到一个熟悉的了),在使用的过程中会生成java类,这些类会被使用,而这个java类就是java(generated),哇塞!!!原来是这样呀,那么事实真的是这样吗?那么实际项目中来看一下是不是这个样子的呢?

从图中(这个项目是个做了一点的项目,就是为了理解)可以看到(请看左边栏) 已经生成了res(generated),还有java(generated),那么这个是同时生成的吗?与navigation有关吗?简单粗暴的方式就是把这个navigation包给删掉,然后呢?不行啊?他怎么还有。效果如下

 所以我不打算这样了,我想到了另外一种方法,新建一个项目,刚开始的时候是没有java(generated)与res(generated)的,所以可以在做的时候来看这个nagivation是否会引起生成java(generated)与res(generated),那就再试一下吧!

首先新建一个项目,项目如图所示

 这是一个drawerlayout,里面用到了navigation组件(导航栏),这里已经出现了java(generated)res(generated)

新建一个项目对这个项目进行一步步的复制粘贴,看看是不是navigation引起generated

首先在res里面添加navigation,发现没有什么变化

那么到现在我感觉就是mainactivity里的程序了

 

程序复制过来有错误,重启了一下,发现出现了Java(generated),res(generated)。因为是直接复制过来的,所以有些问题,那个databing的地方有问题,你们有知道的吗?哈哈,大家加油。

总结java(generated)产生的原因就是navigation这一类组件在使用的过程中,在java程序里的类会被用到,所以会生成这个Java(generated) 。

这是对其初步的理解,有问题希望能指点一二。 

猜你喜欢

转载自blog.csdn.net/weixin_48433993/article/details/128793530