ข้อความเป็นคำพูดของ Android อ่านแท็ก html

ฉันมีอันที่แปลก ฉันกำลังใช้ข้อความเป็นคำพูดในแอปของฉันซึ่งทำงานได้อย่างสมบูรณ์แบบ นอกเหนือจากการที่มันอ่านโค้ด Html บางส่วนจากสตริงที่จัดรูปแบบของฉัน

ตัวอย่าง:

<string name="Aggression"> 
<![CDATA[    

<p><b>Identifying Obsessive Behaviours</b></p>  

]]>
</string>

เมื่ออ่านสตริง มันจะไม่สนใจ "‹ p >" และ "‹ / p >" แต่จะอ่านแท็กที่เป็นตัวหนา!

คำถามของฉันคือ มีแนวคิดใดบ้างที่จะหยุดไม่ให้อ่านแท็ก html บางส่วนได้

ป.ล. ฉันใช้ CDATA เนื่องจากความยาวของสตริงบางส่วนที่ใช้และปัญหาการจัดรูปแบบ


person Jonno    schedule 04.03.2013    source แหล่งที่มา
comment
คุณลองลบแท็กออกแล้วหรือยัง?   -  person CommonsWare    schedule 05.03.2013
comment
@CommonsWare มันอ่านรหัสหลบหนีออกมาดัง ๆ เช่นกัน   -  person Jonno    schedule 05.03.2013
comment
คุณได้ลองเปลี่ยนรหัส Escape แล้วหรือยัง? IOW อะไรทำให้คุณคิดว่า API การอ่านออกเสียงข้อความควรรองรับ HTML   -  person CommonsWare    schedule 05.03.2013
comment
@CommonsWare ฉันพบวิธีแก้ปัญหาด้านล่าง   -  person Jonno    schedule 05.03.2013


คำตอบ (1)


ตกลง ฉันพบวิธีแก้ปัญหาที่น่าทึ่งมากแล้ว เป้าหมายของฉันคือยังคงแสดงข้อความสไตล์ html ที่มีรูปแบบสมบูรณ์แบบซึ่งง่ายต่อการบำรุงรักษา แต่มีเครื่องมืออ่านออกเสียงข้อความเพื่อการเข้าถึง

TextView ของฉันยังคงใช้สิ่งนี้เพื่อแสดงข้อความที่จัดรูปแบบ html:

contentTextView.setText(Html.fromHtml(content));

ฟังก์ชันแปลงข้อความเป็นคำพูดของฉันใช้สิ่งนี้ซึ่งจะตัดแท็กและส่วนหัวทั้งหมดออกและอ่านเฉพาะข้อความเปล่าเท่านั้น:

String editedTextReadable = android.text.Html.fromHtml(content).toString();
person Jonno    schedule 04.03.2013