前言

在我的点赞列表点击item会跳转到对应的详情页面,当用户删除了自己发布的文章内容时,再次点击item会显示白屏并且跳出页面。

产生Bug的原因

获取详情的api接口返回值有两个类型,一是返回状态码为200,返回的正确的数据内容,提示信息为“请求成功”,二是返回状态码为0,返回的数据为null,提示信息为“该用户已经删除了该条内容”,因为只解析了第一种返回值类型,所以在用户删除了某篇文章之后再点击进入详情就会提示未解析内容。

解决思路

开始想的是返回用if else去判断状态码的不同,从而判断用户是否删除了文章内容,可是还是会报错,提示的内容还是未解析第二种返回值类型,我想为可能是因为他们的提示信息不同,所以需要单独的去解析第二种返回值类型。

因为暂时没有想到可以同时解析这两种类型数据的方法,所以我就想在点击这个item的时候就去判断这篇文章是否被删除,如果没有删除就点击进入详情,如果删除了就在当前页面提示“该用户已经删除了该条内容”,经过测试,模拟运行Bug消失。

在写的过程当中我又想到了一个方法,在请求详情页的成功回调中可以判断返回数据是否为空,如果不为空就渲染页面,如果为空就finish()结束当前页面,并返回上个页面,并且给出“该用户已经删除了该条内容”这个提示。