getChildern() 中的树视图
Treeview inside getChildern()
是否可以在内容提供者的 getChildern() 方法中创建树视图?
我有一个树视图,它的 getElements() 方法显示了一些来自枚举的节点,对于这棵树中的每个节点我想要另一个树视图。因此,当用户展开一个根节点时,应该会出现另一个树视图。
谢谢
不可以嵌套树查看器。您必须为代表整棵树的树使用数据模型。
假设您有一个 class TopLevelElement
代表树中的顶级元素之一,并且 class 是 Level1Element
和 Level2Element
一级和二级儿童。那么您的内容提供者方法将类似于:
@Override
public Object [] getElements(Object inputElement)
{
return array of TopLevelElements object;
}
@Override
public Object [] getChildren(Object parentElement)
{
if (parentElement instanceof TopLevelElement)
{
return array of Level1Element children of the top level element
}
else if (parentElement instanceof Level1Element)
{
return array of Level2Element children of Level1Element
}
else if (parentElement instanceof Level2Element)
{
... return any level 3 elements
}
return new Object[0]; // Unknown tree element
}
是否可以在内容提供者的 getChildern() 方法中创建树视图?
我有一个树视图,它的 getElements() 方法显示了一些来自枚举的节点,对于这棵树中的每个节点我想要另一个树视图。因此,当用户展开一个根节点时,应该会出现另一个树视图。
谢谢
不可以嵌套树查看器。您必须为代表整棵树的树使用数据模型。
假设您有一个 class TopLevelElement
代表树中的顶级元素之一,并且 class 是 Level1Element
和 Level2Element
一级和二级儿童。那么您的内容提供者方法将类似于:
@Override
public Object [] getElements(Object inputElement)
{
return array of TopLevelElements object;
}
@Override
public Object [] getChildren(Object parentElement)
{
if (parentElement instanceof TopLevelElement)
{
return array of Level1Element children of the top level element
}
else if (parentElement instanceof Level1Element)
{
return array of Level2Element children of Level1Element
}
else if (parentElement instanceof Level2Element)
{
... return any level 3 elements
}
return new Object[0]; // Unknown tree element
}