我有一个应用程序,我在TextView
. 我正在SpannableStringBuilder
为此目的使用。
我想在这里做的一件事是能够突出显示文本。现在我尝试使用BackgroundColorSpan
,但在这种情况下,文本上的背景覆盖了完整的行高。我希望它只覆盖文本。似乎没有明显的方法可以在此跨度上设置垂直填充或高度。只是颜色。
其次,我还尝试通过在该类的draw方法中绘制来子类化ReplacementSpan
并实现backgroundSpan
我自己的a 。但这似乎不支持多行突出显示。
谁能告诉我如何实现这种突出显示功能?基本上,我希望它像一个电子书阅读器的工作,最好的Kindle
或默认的电子书阅读器Android
。
我正在为Android 3.0平板电脑开发电子书阅读器应用程序.首先,我有一大块String数据.我想根据设备的屏幕大小将该字符串拆分/拆分为页面[我打算使用文本切换器或查看翻板].虽然我尝试使用getWindowManager()方法,但我无法获得首选结果.
在下面的线程中提到Text Switcher会根据屏幕大小自动中断文本.但是我不这么认为. 在Android应用程序中管理文本,就像在电子书中一样
这是我使用的逻辑:
// retreiving the flipper
flipper = (ViewFlipper) findViewById(R.id.new_view_flipper);
// obtaining screen dimensions
Display display = getWindowManager().getDefaultDisplay();
int screenWidth = display.getWidth();
int screenHeight = display.getHeight();
// contentString is the whole string of the book
while (contentString != null && contentString.length() != 0)
{
totalPages ++;
// creating new textviews for every page
TextView contentTextView = new TextView(this);
contentTextView.setWidth(ViewGroup.LayoutParams.FILL_PARENT);
contentTextView.setHeight(ViewGroup.LayoutParams.FILL_PARENT);
contentTextView.setMaxHeight(screenHeight);
contentTextView.setMaxWidth(screenWidth);
float textSize = contentTextView.getTextSize();
Paint paint = new Paint();
paint.setTextSize(textSize);
int numChars = 0; …
Run Code Online (Sandbox Code Playgroud) 我正在考虑用xamarin形式开发电子书阅读器.但我在任何地方都找不到任何Epub/Mobi阅读器SDK.是否有适用于电子书阅读器的xmarin SDK?如果没有,我怎样才能在xamarin中开发一种?