Android 将变量传递给ViewBinder
我有一个Android 将变量传递给ViewBinder,android,android-listview,simplecursoradapter,android-viewbinder,Android,Android Listview,Simplecursoradapter,Android Viewbinder,我有一个ViewBinder,它充当我的ListView和数据库的游标适配器之间的中间人。根据显示此数据的上下文,我需要使用ViewBinder执行不同的操作 例如,以任务管理应用程序为例,该应用程序显示存在的所有任务组的任务。在这种情况下,应用程序可能希望在列表视图中显示任务组的名称,而如果它正在显示某个特定任务组的任务,则不希望显示该名称。列表视图项可以有一个隐藏字段,ViewBinder可用于将任务组的名称映射到该字段,并在必要时将其设置为可见(如主应用程序所指示) 我的问题是如何告诉Vi
ViewBinder
,它充当我的ListView
和数据库的游标适配器之间的中间人。根据显示此数据的上下文,我需要使用ViewBinder
执行不同的操作
例如,以任务管理应用程序为例,该应用程序显示存在的所有任务组的任务。在这种情况下,应用程序可能希望在列表视图中显示任务组的名称,而如果它正在显示某个特定任务组的任务,则不希望显示该名称。列表视图项可以有一个隐藏字段,ViewBinder
可用于将任务组的名称映射到该字段,并在必要时将其设置为可见(如主应用程序所指示)
我的问题是如何告诉ViewBinder
它所显示的上下文,以便它确定如何操作
我意识到这可能是通过实现许多不同的
ViewBinder
来实现的,但这需要复制很多代码,我更愿意使用一个ViewBinder
来实现,我只需将某些参数传递给它。这可以通过为您正在实现的ViewBinder实现构造函数来实现
根据示例,可以执行以下操作:
private Boolean displayGroupName = true;
public ToDoViewBinder(Boolean displayGroupName) {
this.displayGroupName = displayGroupName;
}
@Override
public boolean setViewValue(View view, Cursor c, int columnIndex) {
if(displayGroupName)
{
//Do necessary stuff
return true;
}
else
return false;
}