异构RecyclerView
朋友您好我有一个简单的疑问
这里我要添加singleLineText
`addSingleLine.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String singleLineText = singleline.getText().toString();
if(singleLineText.length() != 0)
{
mAdapter.addItem(singleLineText,null);
mAdapter.notifyDataSetChanged();
Log.e(TAG,"adding single line text");
}
singleline.getText().clear();
}
});`
在这部分我要添加MultiLineText
` addMultiLine.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String multiLineText = multiline.getText().toString();
String myList[] = multiLineText.split(",");
for(String item : myList)
{
mAdapter.addItem(null,item);
mAdapter.notifyDataSetChanged();
Log.e(TAG,"adding multi line text");
}
multiline.getText().clear();
}
});
}`
我的适配器部分代码:
` public void addItem(String singleLineText, String item) {
Model model = new Model();
if(item == null) {
model.setText1(singleLineText);
model.settingSingleLineText(true); // How to identify single line
}
else
{
model.setText2(item);
model.settingMultiLineText(true); // How to identify multiple line
}
modelList.add(model);
}`
GetViewType方法:
` public int getItemViewType(int position) {
if (modelList.get(position).IfSingleLine() != null)
return VERTICAL;
else {
return HORIZONTAL;
}
}`
模型类代码段:
private Boolean checkSingleLine = null;
public Boolean IfSingleLine()
{
return checkSingleLine;
}
public void settingSingleLineText(Boolean txt1)
{
checkSingleLine = txt1;
}
public void settingMultiLineText(Boolean txt2)
{
checkMultiLine = txt2;
}
` 问题:如何使用Model Class识别singleLineText和multiLineText?
答案 0 :(得分:2)
您的LOGGING_CONFIG = {
...
'filename': '/path/to/my/log'
...
}
存在问题。 if (modelList.get(position).IfSingleLine() != null)
永远不会是IfSingleLine()
。您想检查它是null
还是true
,而这不是您检查的方式。
将您的false
更改为以下内容,您将从此功能获得正确的方向结果。
getItemViewType