00:00
同学们,我们注意了啊,这个阶就是手动去解析我们的阶,首先要选个对项,然后挨个挨个就把这字段最后呢,显成我们像我们这样的一个病对吧,你会发现我们这个品这个病呢,和系统之前我们手动生成的那个差不多啊,所以这样的话呢,证明我们显得非常规范,连勾绳都能够识别我们的是吧是吧,那显得我们我们显得非常的专业对吧,你看看它显得差不多啊,他也叫这个,他也叫这个是吧,基本是一样的是吧,就一样的,然后呢,他这个字段也是挨个这样去选出来的,对吧,它也是私有对不对,我们选的非常的好,对吧,所以跟所以解析出来直接就可以用。然后有了过后呢,在我们这个地方里面,我就要去解析了。那么在这个地方里面,我就要改一下这个叫做什么手动解析,或者说使用啊,使用我们的安卓系统自带啊啊的API解析什么解数据,注意啊,我们虽然叫手动解析,但是有时候你就真是用我们去解析吗?不是是用系统的A去帮我们解析,那么既然我们要解析的话,那我们就要做这样的一个事情了啊。
01:30
啊,要开始做了,首先默认的把这个浪对吧,然后嘞,我们在这个地方里面要去创建一个类,好就叫B2,然后再把它给六出来,好这没问题吧,好把它给返回,但是这六出来是肯定它数据是空的啥没有对吧,没关系,然后呢,我们这个时候使用一个叫J省什么啊J省先键吧,然后来六一下,好把这个什么。
02:05
进去吧,好,然后把这个报告错,要把它什么。劝住对吧,好,那么大家看好,我把它转分为GO了,那接下来我要解析,先解析这个,先去做一个简单的去得到它的一个什么。得到一个。Code的呀,好,那这个时候是put是什么类型呢?Int类型呢?好,OB接,然后注意,那么可以得到一个int,这种方式可以吗?注意这种方式可以,但是是带有这种显法,有个问题就是如果这个字段有一天服务器不返回了,这种会崩溃,但是如果我们用OT就不一样,OT才可以,它的好处就是什么呢?这个制段有一天不存在了,它也不会什么报错,只是没有得到内容而已。
03:02
明白吗?OK,那么有这个自动扣,接下来再看一下,在这个这个自动我就不管了啊,这个自动不管了,因为我们根本用不着它,好这接下来就第二个,它得到的是一个什么。是一个数组啊,那么。注意啊,大家一样区分数组和集合,它有时候啊,比如说呃,有时候这两个数组和集合有点混淆,大家想想,集合就是里面放的一个对应的一个什么对象啊是吧?好,那数组呢,其实有时候宿主是也可以放对象啊啊也可以放对象,好那么在阶神里面呢,它有就有啊阶神这么一个类,也有宿组这么一个类吧,大家看好,在我们这个地方里面,我们就要去得到它的这个数组了,它有一个OT,看到没有,这是什么?你看你能得到的是对象int double是吧?那我们是不是还要可以得到一个数组啊,这数组叫啥名字呢?
04:13
叫什么?Date啊,去把它解析过来,好,然后这个时候呢,就是一个JL对吧,好,我们就叫贝这问题吧,OK,然后这个字段得到的公式相当于就得到这个值了。直到直过后就直接塞到哪里去啊,塞到哪里去啊,啊塞到这个字段里面去啊,那么这个字段就是什么?解析成功了吧,这个字段是解析成功了吧,因为他最终塞到里面去了吧,这个呢就是啊这个字段字段啊就解析成功没问题吧。
05:02
好,那接下来我们是解析这个数组的里面的内容了,好,那么解析数组要解析它解析它解析它解析它解析它要做一个事情就什么循环对吧?那么当是有一天如果有一些服务器宕机了,有问题了,是有可能这个data台都没有数据呀,那这个时候我们就应该做一个什么判空不等于那对吧,然后并且这个的长度啊大于什么零,我才去做这样的事情吧,好只有在这样的话,我们才做一个什么循环呢或循环。循环,然后去解析我们每条每条数据,这解决每一条啊,那这个地方第零条第一条第二条是解决每一条啊好,那么这个时候做一个什么循环呢?循环的类型I等于。
06:04
0I小于对的一个什么认识I加加,注意它不是S啊,因为它是数组,数组是只有这个认识这个方法呀,好,那么接下来过后大家想想,我要去得到一个date。对的一对一,这里面这是一个DATE1。那这是一个DATE2就是这个也是一个date,大家想想这一个中括号括起来的是一个节省对象呢?还是节省数组对,所以挨过去得到的是一个节省什么?节省对象对吧?节省对象然后来节省,我节省,然后从数组里面得到是节省什么?接对象对吧,好,然后这个时候从它这里面去get得到的,注意用get不好用什么OPT。
07:08
这个是不是可以啊,可以用get,其实呢,用这个也可以get,但是一般情况下你想或循环过后,你觉得有可能不存在吗?肯定存在吧,长度这样,所以就用get就可以好选一个什么,哎,好,那这个时候需要把它什么强转好,那么这个门是有可能不会空的,一般情况很少我就不犯空了啊,这个可以不犯空,因为他你讲你负循环挨过的群肯定会有啊。对吧。嗯,那么这个时候呢,我们就在这样去解析,大家想想啊。这字这个OTOT啊T。
08:08
这是一个什么ID吧?注意,我是希望大家直接拷贝托比这些字段啊,它可能很简单,但是拷贝会带来好处,就不报错啊,还有这个态度是也是什么类型呢?也是in特类型两个啊啊打的时候容易报错,就打的时候容易出错,知道吧,要拷贝好,那么有了过后接下来的以后接下来是就什么标题了吧,好标题是类型啊title头,然后的话呢,接OG,注意这个用的是它哦,不能不能用外面的,不用其他哦,一定要用它内部这个哟。
09:03
对吧,然后OBT对吧,好这个就有了吧,好有了过后呢,这三个有了是这个我们最后解析啊,因为它是最难的。啊,也不能说最难了,就是循环里面再有循环吧,啊好,那么这个地方里面有了这个ul解析了吗?没有对吧?好然后呢,原种好原来有了过后是这个还有这么一个值啊是什么类型呢。使类型好,所以的话呢,这一个你看其实挺简单的对吧?好接下来这个地方里面啊,第二个这些都有,第三个它多了一个什么。对多少这么一个好复制略过来,接下来是不是还有这个多少这个好,然后嘞,往下走,往下走好,然后有了后好还多了一个什么BUL是吧,好,然后往下走往走。
10:09
是搞定了吧,搞定了好,那最最老火的最难的一个,这你看这里面是当他循环,因为循环第零个的时候,其实就是一个什么,就是就是这一条啊,这条里面是还有一个丘顶啊啊你看怎么办呢?对吧,它得到的又是一个什么数组啊好,这个时候又注意从这里又得到一个什么数组啊,你看明明外面就是一个数组了,数组里面有个对象,对象里面再有个数组,接O又有个数组是吧?好,那这个时候我们就干呗,是吧,No,好怎么干呢是吧。好,那么我们就接绳,注意拿到它JA绳JAJA绳漏十就那就是OT什么。
11:02
什么是六啊,好用它求理好,那么它返回的是一个接。是这样的,是段,那这个字段是我们要想解析它也至少也要判一下什么,所也要判断它不等于空,所以我我们在这个地方有这个丘点,下面这个有丘点吗?没有没有,它会报一个,它就会被空吧,所以判空架子大吗?相当大啊,因为如果你部分空的话,它会啊,就会有问题,它就会报空大于零啊,然后有来过后呢,大家看好,那这个时候我就是要做一个负循环了吧,好注意啊,负循环里面再负循环,那我们还能用I吗?啊对,可以用G是吧,负循环这接等于零,那如果你用I的话,大家看好它会,它会什么爆红听明白了吧,用用积对吧。
12:12
好即小于秋的一个什么认识好接加加好后有后。点过后,那接下来我们再去这去什么,又去得到丘陵里面,大家看一下丘陵里面,丘里面是又是一个什么,又是一个竞对象啊好,我们把这行代码拷贝过来一样的,只是说这个时候这个跟上面同名是不能的,那么就叫什么,我在后面再加一个字段叫秋点it得了,是这样了,这也可以啊好,然后一般情况下,既然有的话,是肯定这个地方一样会有的,对吧?好,那么这个时候OT是吧,这是改为多少,对你一定要改啊,有的同学是不是都忘记了,这我们考虑肯就忘记了,对不对?好那么这个地方里面它有哪些字段就有大家看一下,是就有ID title是有这几个字我看。
13:26
啊点这个丘顶这里面这里你看是只有四个啊四个好,那这个时候呢,我们就去啊对头在就是说这个不就是说不能最好是什么,我们如果OK点我们就这样子,首先用它判断是吧,然后用它去o To Get什么是吧,直接选得了是吧,它返回的是Jason什么object,那我们就叫啊丘顶的一个item,这么点吧,Em好,然后有了过后把它给强制类型转换,避免你去复制的话是有地方容易什么容易容易容易丢掉,然后有了过后,然后再去取啊OT啊OT。
14:26
啊,这个时候呢,它里面就有一个字段叫什么idd,那ID的话呢,这个是一个什么的ID啊in特类型我们叫做啊求定ID好注意这个一定要不能随便选,但是这个可以任意选,没问题吧,我前面都让加一个丘领啊的就是这个一呃这个啊这个呢,我就省略掉了,好接下来到这个字段呢,Title是吧,好,那这个时候拿过来。
15:03
但是这个是什么类型呢?实际类型,然后这个时候呢,我们就将这个这个改为什么行好这么吧,好,这个改为大写好,那么有了过后总共。还有一还有一个呀,好,那么我们位置随便交换可以吗?可以啊,位置随便交换无所谓啊,它是它是按去解解解决的嘛,他说你看K的话,我是跟我对着你去找你位置交换,我我也知道啊,就比如说我我在班里面点名是吧,我说阿福是吧,你不管在教师哪个角度,你能听到吧,对不对,他按T去找就可以交换位置啊就这个意思,好那接下来这个type type是什么类型呢?In特尔,然后这个时候呢,就是啊啊大写对吧,还有接下来是UU啊那大家发现没有,是所有东西都一样啊,就是我们很省市了。
16:01
好,然后呢。把这个复一下改一下好这个呢改一下这个改为大不改大写也可以啊好就这样就有了吧,那有了之后大家想想这些得到的数据装到哪里面去了吗?是都没有装好,大家看好基本上就解析好了,但是这些数据啊,如果你你最终是装到这个并对象里面去啊好,大家看好怎么装了。首先我们现在已经装了这个类型对吧,接下来看一下,如果这个date它不为空,是创建里面么,创建建个数据是一个集合,下方呢,要帮你去创建了,这集合在哪里创建呢?其实创建的就是这个嘞,准备对吧,它好,然后但是我们还叫对的,这不不可以了,因为这个K我们叫这个了吧。
17:06
好,所以你要改个名字,那我们就叫啊叫这个呗,然后D是吧,好,然后六一想。好,那么这个包要给什么导一下吧,好,那么大家想想这个集合是属于哪个类的呀?是属于这个类的呀,所以我们还要把它给什么设置进去吧,好,注意这个里面加数据了吗?没有加没有加我可以设置数据吗?注意我也可以先设计进去它啊对,现在就是要设置啊这个列表数据大家看好它设date里面设一个什么date date里面刚好装的集合式就是这个date配减好,那么传的时间就它,但是大家想想这个集合现在有数据吗?没有,没关系,那是不是在在里面再去再去加呀,好,那么这里面一得到这个数据过后,一得到这个数据后,是不是也是要有个对象啊,这个对象其实装的应该就是谁啊。
18:19
是就是这个对象啊,这个对象啊,好,然后呢,把它给定出来好,应该这里面要改个什么,加个SS这个呢,就这样子,这没题吧,S是不是一个列表吧,好然后这里面呢,就把它给溜出来好,我们先把这个导一下包,然后这里面去一下对吧,好一下。好搞定,你看它会默认去把这个类出来,然后再把我们把里面最终是他这个对对象啊,你看最终是这个对象是不是用来装数据。好了,有了过后这个里面大家想想我们是要要最终要把它添加哪里去啊,添加到集合中ADD对吧,添加到集合中吧,好大家想想我们在这个地方里面六的时候,这个地方里面是一个空的,是也还没有数据啊,我先把它放到集合再设的数据可以吗?可以注意啊,因为我拿到这个类的引用,它虽然加到集合了,我添加照样发生变化呀,好,那这个时候就要去set什么啊。
19:38
ID现在是他就有数据了,在设置什么type好,再设置什么抬头什么地方好,接下再设置什么,接下来再设置什么多少啊一。
20:05
然后再设置我们的这个。你看很简单了吧,好,再设置我们这个,接下来再设置黑客,大家仔细看啊,有了吧,好,那么这个哥们他就把谁添加了,把这字添加了,其实它里面艾特里面,大家还想这个艾特里面是还有个丘顶呢,我们是把这些东西都填了,都填了是不是还差一个丘顶呢?好那么也就是说他这里面还要去做一个事情,就是设置丘陵,对吧。好,那丘顶大家想是也是一个集合啊,所以这个地方里面呢,当它当它OK的话,它这地方要还要去设置,设置我们的丘顶,这丘顶上还没有啊好,那没有的话,在这方要创建一个什么,创建一个顶。
21:04
好,那丘点的就是一个丘点对吧,对吧。好,然后呢,把包注意那导导导几的,导二的是导一的导二的,因为我们用的是二去手动解析嘛,好然后溜一下。好,然后得到这个集合,然后接下来我们要把这个集合也设到这里面去吧,好,这就是这集合,这集合是什么装什么的呀,是装这个的好,那么这个时候既然是集合,我们最好是加一个什么一个什么S对吧,好,那这集合有了是空的,现在只是创建一个空的集合呀,然后这个地方里面再去把每一个什么把它给串出来吧,好好,然后先把这个这倒一下,第倒第一个啊第二个的好,那这个的话呢,显然的话呢,要重新录一下。
22:13
对吧,好,那你看是类里面再内部是内部类里面它比较长没关系,然后这个得挨过去循环过,要添加到哪里去啊。添加到这个集合中嘛,这个是你S是集合呀,好,然后这个集合又放设置到我们之前的这一条里面去了,这是吧,这一条里面又添加到这个集合里面,是一环扣一环了,大家一定要掌握关键点啊,好然后有了后在地方里面就要去把这个们添加到哪里去啊。添加到集。集合中,然后ad什么求定,对,是可以了吧,好,那是这个集合里面有数据吗?现在没有,算什么set date set ID啊,就是丘是吧,ID对吧,然后去set我们的什么title啊,Children title。
23:18
然后呢,去设置我们的什么秋,再设置我们的什么类型,确定类型OK搞定了吧,就这样就解决好了,那这个病是我们之前提前已经返回了,好那同学们有了过后证,怎么证明我们OK呢?大家看好怎么证明我OK呢?是这些数据的话是都是之前用丘。秋林的,那我把这个数据最之前的吧,我把它给。做掉肯定好多地方报错是吧,然后这个地方里面我们全部把它给替换成是9.2,大家看好,这证明我们的成功是吧,我们可以看一下啊,然后我们这个病呢,我们这个病的话。
24:12
把这个干掉,把这个干掉改为这样子是吧,啊全全就全部改都可以是吧?好然后这个干掉好那么这个时候有了过后呢,我们在这个地方里面,它get date get date,它得到的数据呀,是哪里的呀,是这个集合的吧,对吧?好然后呢,我们去把它给接收一下。好,那么这个时候是改,把这个改为多少,哎,对吧,然后的话呢,这个肯定也变了对吧?好是这样了吧,好变了好,然后有了过后,呃,这个地方里面有个后,这个设在date里面,这个也变了点点看一下啊,这个地方也是改为什么二好,这个对象呢也变了这么地方好接下来呢,这个改为多少二然后呢,这个也变了啊,因为我们取的名字不一样,但是结构都一样的。
25:17
好,然后好,还有还有哪里呢?新闻中心这里可以了,好那其他地方还有,因为我们直接把那个类给注释掉了嘛,全部得变成二了,对吧,好二都行啊。那就相当于全部手动解析了呗,是吧,好运行起来看一下。啊,如果还有错的,我再去改,那如果都能正常显示数据是没问题啊好,那么我们呢,去把它给看一下。所以同学们还是手动解析,就这么来的。好,涛声依旧啊,哇塞,是不是照样可以啊,同学们,那就手解析,你看完全融合之前的代码对吧?好,那我们给大家看一下它是怎么解析一个过程啊,做一个debug天衣无缝,知道吧,这就叫。
26:09
这要解析,你要知道这个解析的话,以前我在风行所有的价,所有的数据解析都是我做的,所以特别熟,知道吧,就是说想选错都难啊,为啥呢?因为之前练过很多,并不是说我怎么样,而是我真的练过好多次了,给他看好啊,我们第bug。Debug的话,我现在是已经运行起来了,运起来了大家看好,我运行起来,我不debug方式运行,我直接点这个。点它,然后呢,你看之前以前我们debug是debug运行的,现在我是已经运行了,我直接点这个,它也是属于debug状态。明白吧,好,然后我再去点。看好来了啊,开始解析了,在这个地方里面的话嘞,它一个这样的数据过来,还是节省吧,嗯。
27:01
然后嘞,这个类大家看一下,它已经得到了这个200,但是这些这那么这因为代码直接跑到这里来,因为我这地方刚才打断你是打不着啊,这是空的。这之前是这个是刚加的这个这行代码是执行到这没有意义啊,所以的话最跑到这,因为这个打断了,好那么这个地方是得到了这个数组啊,是那丘零不是是对的数组啊,这的数组是哪里啊,就这个。好,得到了吧,好,接下来过后我得到这个数组过后。好,它就长度是大于零吧,往下走。大家看好往下走点,这个是往下走吧,走那这个对象被创建了,你觉得它这个列表被创建了,它里面有数据吗?现在没有啥,没有往下走。
28:01
我们去设置一个。啊集合,那也就是说我们刚才这个B2之前是为浪的,现在是一个什么,是一个中号了,现在只是没有数据而已,是至不至于像他是还是等于那吧,嗯,我是有了这有个括号,是不是证明是被实体化了吧,好,那么接下来再往下走。往下走好,这个得到的是我们第一条是新闻吧,新闻是不是就是这条啊,这条数据啊,第零个新闻,但是它有一个丘顶是不是啊,有丘顶,大家可以略看一下数据有没有丘顶,好那么大家看一下,哎呀,这个地方里面是有这个是丘陵的好然后就是第一条就是复杂,第一条就很简单了吧,好大家看好,然后呢,我们把它六这个对象里面是有这些类型,是还有我看一下啊,这对象里面啊有这个title,有这些东西是吧?是还有秋呢,秋是不是也没现在啊,还没有这个是一个对装装数据的吧。
29:09
好,然后往下走。好,走了好几个,这个ID得到了。好,然后这个类型得到了对吧,好,大家再看一个对象。这些都有了吧,好,但是这些东西可能这个自动不一定有,但是丘这个自动是肯定有啊,往下走往下走,往下走,往下走走往走走,好好大家看一下。再看一下,再看这个对象。是这些有了吧,好,那么在我们这个地方里面这些UI。Yellow。U的话,UR它是有数据吗?是本来就没有数据啊,是这里面没有看没有,他告诉我们这个没有吧,好这个。
30:00
是也没有啊好,那么没有好,那在丘大概好丘的话这个字段里面,它应该是有丘的,只是现在还没有,还没到丘的解析吧。还没到解析好,然后给大家往下走。马上走好,那这时候他创建一个集合,集合里面的话呢。还没有值好,那这个时候大家再看一下这个字段呢,它就有就有丘了,丘是变成一个。京是不是这条数据的丘陵里面第一条数据是北京呢,写这条啦,大仔细看啊,这是第八个,教你们怎么去解析的,这个这个循环里面循环啊,往下走往下走这条数据。好,这条数据刚才地方里面呢,它就有了,看到没有北京有这条数据了吧,好,接下来再循环一次。
31:07
好,那再看一下这里面是有了,因为因为已经好了,好,那么我们可以看一下这个集合。这集合里没有几条数据了。两条数据北京中国都有了吧?好,那我们再看一下上面这个集合。两条好,再看这里,这里面的这个丘里面它有北京这条数据了吧,对不对,北你看再看一下丘点这里它有两条数影是也可以看到啊好,所以的话呢,大家对吧,好,那我这样我要数一下这个两条。啊,我打断点,我只打一个点啊,跳让跳几次啊呃,打到这里吧啊。这个你看好。就完了。
32:03
好,稍等一下。哦,这第八个的话,他生了过后他就崩了啊,这样啊,他就他就崩了啊,他几把ug多次就崩了,那我们到这到末尾,当他返回的时候打断点吧。啊,然后进来。点这个。的状态了吧,一点听到了吧,好,我们呢就不看了,不看这个过程其实就是循环扩大添加进去的,知道吧,好,然后我们在地方里面端点添加添加添加。啊又又不行,那啊就就是如果第bug的话呢,就是你是什么,就看这个过程循环循环,然后呢,最后呢,把它给什么添加进去,然后循环第一次是接下来它又开始这个大循环了,嗯,那学大循环里面,那就是到第一条啊到这个第一条,再到第二条,再第三条,那么如果这个里面再有丘点是在循环里面了,如果这里面丘在循环里面,但是这里只有一个丘点,就循环在这里面,第一条的是循环一次,下面都不循环了,所以我们一定要做一个什么判空。
33:19
明白吧,前面没有字,前面这些字段的话是这样的,前面这些字段。嗯,前面这这段它里面还有吗。没有吧,你看比如说比如说这些字段,它里面还有内容吗?没有,但是丘里面还有,但是里面有,但是这些又下面这条又没有,你该碰空吗?不碰不就崩了吗。你干哈?这个丘里面它是有数据的,第一条第零条里有出数据的,但是第二条有吗?那也就说当它循环这个外面的循环它为啊零的时候有这个丘点有,但是为一的时候有吗?这丘点有吗?谁要判空啊,否则不崩溃啊好,那又回来来回你这个问题,那这些字段你看是没有喷空啊。
34:16
为因为呢,因为它空也不影响对不对,所以的话,你要太空可以吗?也可以对吧,但是没必要啊,没必要,因为它空不影响,好的同学们,这就是我们所讲的啊,手动解析阶层对吧,非常有含金量的啊,把视频保存一下。
我来说两句