0

我生成了一个滚动视图,里面有一个标题和一个圆形矩形列表。一切正常,但标题不固定,所以我用 addFixedBar 替换标题的 addchild。现在标题是固定的,但它覆盖了 RoundRectList。该列表的上端超出标题,我无法阅读。我如何告诉列表更小?

if (parentNodeId !== previousParentNodeId){
        var newDiv = new dojox.mobile.ScrollableView({
                    id: divNodesId,
                    dojoType: "dojox.mobile.ScrollableView",
                    scrollDir: "v",
                    style: "background-color: #d0d0d0"
        });
        newDiv.placeAt('mobileView','first');

        //look if there is a previous parent, only if there is one generate back button; needed for root div
        if (previousParentNodeId == null){
            var newHeading = new dojox.mobile.Heading({
                        id: h1NodesId,
                        dojoType: "dojox.mobile.Heading",
                        fixed: "top",
                        label: "Knotenübersicht"
            });
        }
        else {//create heading with back button
                        var newHeading = new dojox.mobile.Heading({
                        id: h1NodesId,
                        dojoType: "dojox.mobile.Heading",
                        back: "zurück",
                        moveTo: previousParentNode,
                        fixed: "top",
                        label: divNodeLabel
            });
        }

        //newHeading.placeAt(divNodesId,'first');
        newDiv.addFixedBar(newHeading);
        newHeading.startup();

        ulNodesId = "ulNodes"+parentNodeId;
        var newUl = new dojox.mobile.RoundRectList({
                    id: ulNodesId,
                    dojoType: "dojox.mobile.RoundRectList"
        });
        newUl.placeAt(divNodesId,'last');
    }
4

2 回答 2

0

您的代码中有许多需要更改的地方,包括:

  • 添加对 ScrollableView 的 startup() 方法的调用(放置在将视图添加到 DOM 之后)。
  • 要将 RoundRectList 添加到 ScrollableView,例如使用 newUl.placeAt(newDiv.containerNode); (我使用您的变量的名称,它们分别保存 RoundRectList 和 ScrollableView 的实例。请注意,该列表已添加到 ScrollableView 的 containerNode)。
  • 删除 dojoType 构造函数参数(这不适用于程序化实例化)。

最简单的方法是您获得灵感或将您的代码与 dojox/mobile/tests/test_dynamic-ScrollableView-vh-vf.html (您可以找到源代码分发)进行比较。该测试完全符合您的要求。

于 2014-04-16T09:34:48.217 回答
0

尝试将 css 样式属性直接添加到 RoundRectList 的标记中

例如:

<div id="divNodesId" style="z-index: 1;position: relative;top: 15px;"></div>

您也可以尝试将相同的样式添加到:

    var newUl = new dojox.mobile.RoundRectList({
                id: ulNodesId,
                dojoType: "dojox.mobile.RoundRectList",
                style: "z-index: 1;position: relative;top: 15px;"
    });

使用 css 位置来移动它或者只是 z-index 来查看它。

也许尝试添加宽度和高度 css 以获得你想要的东西??:

    var newDiv = new dojox.mobile.ScrollableView({
                id: divNodesId,
                dojoType: "dojox.mobile.ScrollableView",
                scrollDir: "v",
                style: "width: 800px,height: 90px;background-color: #d0d0d0"
    });

您也可以使用 css left,right,bottom。使用 + 或 - px 数字找到您想要的位置。虽然不确定如何使列表更小,但您可能不需要使用上面的 css 内容。没有完整的例子很难说..

于 2013-05-24T15:13:16.137 回答