Tag: richedit

在Android中实现富文本编辑器?

我想知道是否有任何好的select来实现Android中的富文本编辑器 。 请注意我正在讨论一个可以在Android应用程序中使用的富文本编辑器,而不是使用HTML和Javascriptembedded网页的编辑器。 我的要求是: 基本格式(颜色,字体,高亮,粗体,斜体,下划线等) 超链接 内联图像 项目符号列表和编号列表 内联表格(只有单元格内的内容是可编辑的,而不是表格结构) 正如你所看到的,这和Windows上典型的RichEdit控件非常相似。 以下是我迄今为止所做的一些努力(调查和原型) 使用WebView 我曾尝试使用WebView控件加载一个HTML片段。 内容变得可编辑,因为它是HTML,我想它可以满足我的大部分要求。 但是它有几个问题: (致命)没有文字符号。 用户将不知道他/她的input字符将被插入到哪里。 屏幕上的软键盘在默认情况下是不可见的。 有一个技巧,用户必须长按菜单button来调出键盘。 但我认为这是一个非常糟糕的用户体验。 此外,屏幕布局不正确重新排列,文本插入点有时会被键盘覆盖。 使用EditText 我曾尝试使用EditText控件。 它似乎支持一定程度的富文本编辑(颜色,字体,粗体,斜体,下划线,内联图像,项目符号列表)。 但我仍然不知道如何实现以下要求: 控制子弹符号(点,圆,短划线,箭头,星号等) 编号列表(1.,2.,3.等) 表 顺便说一句,我已经看到有几个* span类,但我不知道他们是否可以得到任何帮助…而http://developer.android.com并没有提供有关他们的很多有用的信息。 那么,我怎样才能在Android上实现丰富的文本编辑器呢? 我可以扩展EditText并添加我的新function吗? 或者我应该从头开始做一些事情 – 扩展视图并自行实施一切? 对于后面的选项(扩展视图),我甚至不知道如何显示文本插入符号并眨眼,而不是提到用用户input移动插入符号。 我现在绝望…任何提示? 谢谢! 托尼 ( 编辑 ) 经过一些进一步的调查,看起来像扩展EditText将是我最好的select。 我以某种方式想出了如何使用Span类,并猜测我应该能够使用(扩展)它们来完成大部分的技巧。 例如,扩展BulletSpan和重写drawLeadingMargin应该让我控制子弹的附属。 延长LeadingMarginSpan应该帮助我在编号列表。 至于表格,我最初的计划是扩展LineBackgroundSpan并在drawBackground覆盖中绘制所有的表格边界。 但是,我仍然需要弄清楚如何布置表格单元格中的所有文本,并妥善处理脱字符号的移动和select。 build议?