有没有办法在flash中使用自定义项目符号制作项目符号列表?如果是这样,在设置htmlText时,是否可以在Flex(mx.controls.TextArea)中的TextArea中使用它?
例如:
<li>Item</li>
<li>Item</li>
当使用htmlText设置到TextArea时,上面的列表将呈现正常(而不仅仅是设置text属性)。渲染文本将具有标准的香草项目符号。有没有办法用自定义图像设置这些项目符号的样式,就像在标准HTML / CSS中一样?
谢谢!
答案 0 :(得分:2)
我不想跳枪而只是说不。但我真的不认为你可以。我从来没有能够找到任何甚至谈论它的文档或例子。所以我只能承认不,目前还没有办法。
您可以做的最好的事情就是使用标准的flex组件自己绘制列表。
答案 1 :(得分:2)
我肯定会说你做不到。 TextArea不可避免地引用了一个通用的flash.text.TextField
来处理HTML文本的呈现(实际上它调用createInFontContext(UITextField)
来创建它的文本渲染器,它的UITextField继承自TextField)。如果查看TextField文档:
您会注意到这会使用flash.text.StyleSheet
进行渲染。如果你看一下这些文档:
你会发现它不支持自定义项目符号。
你真的没有其他选择。您可以尝试手动覆盖带有图像的项目符号(例如,使用Image类),或使用备用Flex组件来呈现列表。
答案 2 :(得分:1)
是的,使用含有两个项目的HBox:
然后将HBox放在Repeater组件中。
<mx:Repeater dataProvider=" [refer to an array with your list] ">
<mx:HBox>
<mx:Image source="{ [refer to your image class of choice here] }"/>
<mx:Label text="{data.text}"/>
<mx:HBox>
<mx:Repeater>
这对动态列表特别有用。
答案 3 :(得分:0)
您可以手动输入项目符号并根据自己的喜好设置样式,但随后会丢失缩进。
<font color='#FFE400'> • </font> My bulleted item<br>
<font color='#FFE400'> • </font> My bulleted item<br>
<font color='#FFE400'> • </font> My bulleted item<br>
此网站还有另一种方法
http://blog.formatlos.de/2009/06/18/styling-html-textfield-bullet-points/