public class ExercisesDetailActivity extends AppCompatActivity {
private TextView tv_main_title;
private TextView tv_back;
private RelativeLayout rl_title_bar;
private ListView lv_list;
private String title;
private ExercisesBean bean;
private List<ExercisesDetailBean> detalList;
private ExercisesDetailAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_exercises_detail);
//获取从习题界面传递过来的习题数据
bean = (ExercisesBean) getIntent().getSerializableExtra("detalList");
if (bean != null) {
title = bean.getChapterName(); //获取习题所在的章节名称
detalList = bean.getDetalList();//为什么这一段有问题?我的这里的detaList不就是下面的detalList吗?
}
public class ExercisesBean implements Serializable {
private static final long serialVersionUID=1L;
private int id;//章节id
private String chapterName;//章节名称
private int totalNum;//习题总数
private int background;//章节序号背景
private List<ExercisesDetailBean> detalList;//习题详情列表
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getChapterName() {
return chapterName;
}
public void setChapterName(String chapterName) {
this.chapterName = chapterName;
}
public int getTotalNum() {
return totalNum;
}
public void setTotalNum(int totalNum) {
this.totalNum = totalNum;
}
public int getBackground() {
return background;
}
public void setBackground(int backgroud) {
this.background = backgroud;
}
public List<ExercisesDetailBean> getDetalList() {
return detalList;
}
public void setDetalList(List<ExercisesDetailBean> detalList) {
this.detalList = detalList;
}
}
这里为什么获取数据的时候获取不到啊?我
该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
在你的代码中,获取 ExercisesBean
对象是通过 getSerializableExtra
方法实现的,其参数应该是 "bean"
而不是 "detalList"
。因此,修改以下代码:
bean = (ExercisesBean) getIntent().getSerializableExtra("detalList");
为:
bean = (ExercisesBean) getIntent().getSerializableExtra("bean");
这样就可以正确地获取到 ExercisesBean
对象,并从中获取到 detalList
列表了。
如果以上回答对您有所帮助,点击一下采纳该答案~谢谢
从你提供的代码上看,可能是在传递数据的时候出现了问题。你获取数据时使用 key 为 "detalList" 作为标识符,但是在传递时使用 "data",这两个标识符是不一样的。
你可以将传递数据的代码中的 "data" 改为 "detalList",即:
intent.putExtra("detalList", bean);
这样就能正确通过 "detalList" 获取到对应的数据了。
不知道你这个问题是否已经解决, 如果还没有解决的话:很抱歉,这个问题给出的信息不足以让我确定detalList是指哪个变量,也无法确定在哪一段代码中获取不到数据。如果可以提供更具体的上下文信息和错误提示信息或异常信息,我可以更准确地回答您的问题。