这是我第一次在这里提问。我将清楚地解释什么是问题。
我正在创建一个Android应用,通过Feed中的选项/选项显示问题。我使用RecyclerView和CardView来显示它们。我能够显示问题和其他东西,但我很难显示选项。我试图在onBindViewHolder()内循环选项/选项数组。我可以在日志中看到数据存在,但我不能/我不知道如何动态添加视图。
我已经有了循环,但我不确定如何膨胀或显示文本视图。这是我的onBindViewHolder()
代码:
public void onBindViewHolder(PublicQuestionViewHolder publicQuestionViewHolder, int i) {
publicQuestionViewHolder.questionAuthor.setText(questions.get(i).getQuestionAuthor());
publicQuestionViewHolder.questionText.setText(questions.get(i).getQuestionText());
ParseUser currentUser = ParseUser.getCurrentUser();
if (currentUser == questions.get(i).getQuestionParseUser()) {
publicQuestionViewHolder.questionEditIconImageView.setVisibility(View.VISIBLE);
} else {
publicQuestionViewHolder.questionEditIconImageView.setVisibility(View.INVISIBLE);
}
//Log.d("Options", String.valueOf(questions.get(i).getQuestionOptions().size()));
if (questions.get(i).getQuestionOptions().size() != 0) {
for (QuestionOption option : questions.get(i).getQuestionOptions()) {
if (option.getQuestionOptionType().equals("T")) {
Log.d("Option", option.getQuestionOptionText());
} else if (option.getQuestionOptionType().equals("I")) {
Log.d("Option", option.getQuestionOptionImage().getName());
}
}
}
}
答案 0 :(得分:4)
首先在适配器构造函数中获取活动上下文并保存。
然后只需在onBindViewHolder中夸大该视图,就像这样 -
View newView = LayoutInflater.from(context).inflate(R.layout.view_name, null);
将该视图添加到您喜欢的任何父级,例如。 -
publicQuestionViewHolder.parentName.addView(newView);
然后像这样引用它的孩子 -
TextView name = (TextView) newView.findViewById(R.id.name);