Apache flex Flex 4火花列表宽度调整问题

Apache flex Flex 4火花列表宽度调整问题,apache-flex,list,flex4,resize,width,Apache Flex,List,Flex4,Resize,Width,我有一个带有项目渲染器的spark列表。单击某个元素时,渲染器会变大,再次单击时,渲染器会变小。 问题是列表不能随内容调整大小。我尝试从渲染器发送事件,通过以下方式传递其内容大小和大小列表: private function refreshList(event:ResultEvent):void { var size:Number = (event.result as Number) + 6; if (size >= mylist.width)

我有一个带有项目渲染器的spark列表。单击某个元素时,渲染器会变大,再次单击时,渲染器会变小。 问题是列表不能随内容调整大小。我尝试从渲染器发送事件,通过以下方式传递其内容大小和大小列表:

private function refreshList(event:ResultEvent):void
      {
        var size:Number = (event.result as Number) + 6;

        if (size >= mylist.width)
        {
          consultingNumber++;
          mylist.width = size;
        }
        else
        {
          consultingNumber--;
          if (consultingNumber == 0)
            mylist.width = size;
        }
        mylist.invalidateDisplayList();

      }
consultingNumber是“打开”渲染器的数量。 它工作得很好,但当所有渲染器都“关闭”时,会出现一个水平滚动条。
跟踪列表的宽度结果是正确的,但即使我将horizontalScrollPolicy设置为off,滚动条仍然存在。

尝试调用myList.invalidateSize()而不是myList.invalidateDisplayList()

以下是有关flex组件生命周期的更多信息,这些信息将使您走上正确的轨道:

干杯