Chúng tôi đang điều chỉnh ứng dụng web intranet của mình thành tuân thủ WCAG 2.0. Ứng dụng này có một danh sách các điều khiển phức tạp, nhưng tôi không thể đọc màn hình để đọc bất cứ điều gì trong danh sách nhưng labelDisplay hoặc whats được trả về bởi labelFunction của danh sách.Cách đọc bộ đọc màn hình để đọc một thành phần ItemRenderer
dưới đây là ví dụ được đun sôi, "labelOne" được đọc bởi trình đọc màn hình và hộp danh sách và kết quả của nhãnFunction cho từng mục trong danh sách.
<?xml version="1.0"?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:access="accessibility.*">
<fx:Script><![CDATA[
private function listLabelFunction(item : Object) : String {
return item.one;
}
]]></fx:Script>
<s:VGroup>
<access:Label id="labelOne" text="This text will be read out!"/>
<s:List hasFocusableChildren="true" labelFunction="listLabelFunction">
<s:itemRenderer>
<fx:Component>
<s:ItemRenderer>
<fx:Script><![CDATA[
import mx.controls.Alert;
]]></fx:Script>
<s:HGroup id="hGroup">
<access:Label id="labelDisplay" text="{data.one}"/>
<access:Label id="labelTwo" text="{data.two}"/>
<s:Button id="button" label="{data.button}" click="Alert.show('Ok!')"/>
</s:HGroup>
</s:ItemRenderer>
</fx:Component>
</s:itemRenderer>
<s:dataProvider>
<mx:ArrayCollection>
<fx:Object one="one" two="two" button="ok"/>
<fx:Object one="une" two="deux" button="ok"/>
<fx:Object one="uno" two="due" button="ok"/>
<fx:Object one="um" two="dois" button="ok"/>
</mx:ArrayCollection>
</s:dataProvider>
</s:List>
</s:VGroup>
</s:Application>
"nhãn truy cập"; đảm bảo nhãn được đọc và nằm trong thứ tự tab.
package accessibility {
import mx.managers.IFocusManagerComponent;
import spark.components.Label;
public class Label extends spark.components.Label implements IFocusManagerComponent {
}
}
tôi có thể tab quá mỗi mục trong danh sách, tức là "labelDisplay", "labelTwo" và "nút", nhưng trình đọc màn hình không đọc chúng ra.
Có thể nhận từng nhãn và nút đọc không?
Tôi đã theo dõi các đề xuất của bạn và họ đã xử lý! Tôi đã có thể tab vào các điều khiển bên trong mỗi renderer mục! Cảm ơn bạn! – Adz
@Adz thật tuyệt vời! Đối với sự tò mò của tôi, và lợi ích của người khác, bạn đã giải quyết giải pháp nào? –
Tôi đã áp dụng cả hai đề xuất, nó không hoạt động đúng với cả hai đề xuất đó. – Adz