flex中怎么控制mx:List的高度

flex中如何控制mx:List的高度

做一个打印小票的功能,其中有的选择项是用户勾选了才打印,因此是动态的。采用mx:List加载这些选择项,遇到了一个问题,mx:List默认有一个高度,height不能设置成一个定值 ,因为不能确定有几项,当时想到使用 dataList.length*20,也就是每行高度为20,但是使用dataList.length这样的非常量值时,打印的小票内容竟然为空,没有仔细找原因,直接pass了这个方案。然后设置minHeight还是无效。

 后来找到资料,使用 rowCount="{objData.customPrintArr.length}"才解决问题。

 

<mx:HBox width="150" horizontalScrollPolicy="off" verticalScrollPolicy="off">
		<mx:VBox width="40%" height="100%"  verticalGap="0">
			<mx:Text text="顾客姓名:" fontSize="9"/>
			<mx:Text text="预订时段:" fontSize="9"/>
			<mx:Text text="预订目标:" fontSize="9"/>
			<mx:Text text="就餐时间:" fontSize="9"/>
			<mx:Text text="人数:" fontSize="9"/>
			<mx:Text text="押金:" fontSize="9"/>
			
			<mx:List dataProvider="{objData.customPrintArr}" borderStyle="none" paddingLeft="0" rowCount="{objData.customPrintArr.length}" verticalScrollPolicy="off" horizontalScrollPolicy="off">
		  		 	<mx:itemRenderer>
			    		<mx:Component>
			    		<mx:Text text="{data.name}:" fontSize="9" paddingTop="-3" paddingBottom="-3" height="15"/>
			    		</mx:Component>
			    	</mx:itemRenderer>
		    </mx:List>

		</mx:VBox>
		<mx:VBox width="60%" height="100%" horizontalAlign="right"  verticalGap="0">
			<mx:Text text="{objData.customer}{objData.sex}" fontSize="9"/>
			<mx:Text text="{objData.period}" fontSize="9"/>
			<mx:Text text="{tableName}" fontSize="9"/>
			<mx:Text text="{objData.arrivedTime}" fontSize="9"/>
			<mx:Text text="{objData.personNum}" fontSize="9"/>
			<mx:Text text="{objData.deposit}" fontSize="9"/>
				
			<mx:List dataProvider="{objData.customPrintArr}" borderStyle="none" paddingLeft="0" rowCount="{objData.customPrintArr.length}" verticalScrollPolicy="off" horizontalScrollPolicy="off">
		   			<mx:itemRenderer>
			    		<mx:Component>
			    		<mx:Text text="{data.printdata}" fontSize="9" paddingTop="-3" paddingBottom="-3" height="15"/>
			    		</mx:Component>
			    	</mx:itemRenderer>
		    </mx:List>
		 

		</mx:VBox>
	</mx:HBox>