【问题标题】:Using TreeField , expand or collapse a Tree in Blackberry?使用 TreeField ,在黑莓中展开或折叠树?
【发布时间】:2013-08-02 10:20:27
【问题描述】:

我现在在黑莓中使用TreeField 绘制了一个树形结构。根节点由15个节点组成,每个节点都有对应的子节点,在运行应用程序时,所有节点都以展开的形式出现。我只需要展开一个特定的节点,而将其他所有节点都折叠起来。

我已尝试使用 apis 中的以下方法。

myTree.setDefaultExpanded(false);

myTree.setExpanded(1, true);

但到目前为止似乎对树没有任何影响。所有节点都在启动应用程序时扩展。

【问题讨论】:

    标签: blackberry tree expand collapse treefield


    【解决方案1】:

    如果您查看TreeField 的文档,您会发现必须在添加节点之前调用setDefaultExpanded(),而不仅仅是在它们显示之前:

    setDefaultExpanded

    public void setDefaultExpanded(boolean expanded)
    

        为未来的节点分配设置默认扩展状态。

    因此,要修改TreeField example,您需要执行以下操作:

       public TreeFieldDemoScreen()
       {             
          setTitle("Tree Field Demo");
    
          String fieldOne =  new String("Parent folder 1");
          String fieldTwo =  new String("Parent folder 2");
          String fieldThree =  new String("Sub-folder 1");
          String fieldFour =  new String("Sub-folder 2");
    
          TreeCallback myCallback = new TreeCallback();
          TreeField myTree = new TreeField(myCallback, Field.FOCUSABLE);
          myTree.setDefaultExpanded(false);
          
          int node1 = myTree.addChildNode(0, fieldOne);
          int node2 = myTree.addChildNode(0, fieldTwo);
          int node3 = myTree.addChildNode(node2, fieldThree);
          int node4 = myTree.addChildNode(node3, fieldFour);
    
          add(myTree);
       }
    
     
    

    【讨论】:

      猜你喜欢
      • 2023-04-03
      • 1970-01-01
      • 2011-05-29
      • 2018-01-25
      • 1970-01-01
      • 1970-01-01
      • 2013-07-01
      • 2012-01-19
      • 1970-01-01
      相关资源
      最近更新 更多