Articles of textview

如何设置单个文本视图的多个点击事件?

我有一个如下所示的textview: txtByRegistering.setText("By Registering you agree to terms and condition and privacy policy"); 这只是一个大文本。 所以,我用水平滚动文字框。 工作正常。 我的问题是,如何在单击选定的滚动文本时调用点击事件。 例如说: 当用户在上面的文本视图中单击“注册”一词时,我必须调用新的意图。 当用户点击单词"Terms" ,我必须调用另一个新的意图(一个活动与web视图作为条款有URL Link )。 由于“注册”和“条款”这两个词是url,我尝试了下面的内容: String mRegDesc = "By registering you agree to the " + "<a href=\"" + Constant.URL + "/terms_and_conditions" + "\">Terms of Use</a> " + "and " + "<a href=\"" + Constant.URL + "/privacy" […]

使string可点击,在TextView中加下划线

我想使string“这个链接”加下划线和点击,但我不知道如何实现这一点。 XML文件: <string name="submitText">Before you submit, please check out &lt;u>this link&lt;/u></string> 在我的片段中: tvSubmit.setText(Html.fromHtml(getString(R.string.submitText))); 我不希望整个string是可点击的,只有下划线部分。 我不能使用2个单元格的水平LinearLayout ,因为在较小的设备上,string将不会有继续的样子,它将被分成2个单元格。 我试过了什么: tvSubmit.setMovementMethod(LinkMovementMethod.getInstance()); Spannable sp = (Spannable) tvSubmit.getText(); ClickableSpan click = new ClickableSpan() { @Override public void onClick(View widget) { showLink(); } }; sp.setSpan(click, 0, sp.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 上面的代码使整个string下划线,并且文本的颜色也变成浅蓝色。

在Android中如何使用EasyEditSpan来允许部分文本编辑?

我想允许用户在我的Android应用程序中只编辑一部分文本。 我看到一个名为EasyEditSpan的类,但是当我将其粘贴到TextView中时,什么都不会发生。 我试图使TextView可编辑,但它仍然没有任何影响。 如果切换到EditText,那么整行文本是可编辑的,这也是不正确的。 这是我的代码: @Override public void onCreate(Bundle savedInstanceState) { TextView testView = (TextView)findViewById(R.id.text_view); testView.setText(buildMiddleEditSpannable("Please enter your ", "Name", " here.")); } public static Spannable buildMiddleEditSpannable(CharSequence beginning, CharSequence middle, CharSequence end) { int spanMidStart = beginning.length(); int spanMidEnd = spanMidStart + middle.length(); SpannableString span = new SpannableString(new StringBuilder(middle).insert(0, beginning).append(end)); span.setSpan(new EasyEditSpan(), spanMidStart, spanMidEnd, 0); […]

ScrollView内容更新

我有一个编程生成的ScrollView里面有一个TextView 。 我希望不时更新TextView的文本,并且已经实现了一个处理函数来更新TextView GUI元素。 这似乎调用/正常工作。 但是,目前我发现实际上让TextView显示附加信息的唯一方法是调用: consoleText.append("New text to add to TextView"); // then: myScrollView.removeView(myTextView); myScrollView.addView(myTextView); 这不是特别优化,并想知道如何刷新ScrollView的内容来显示我的新增信息… 也: invalidate(); postvalidate(); 似乎没有做任何事情 – TextView对象有新的文本(查看debugging),它只是没有绘制到屏幕上,除非我调用添加/删除function。 感谢您提供的任何信息/帮助 FR

我如何获得TextView的背景颜色?

我如何获得TextView的背景颜色? 当我按下TextView时,我想根据使用的背景颜色来改变背景颜色。 TextView没有如下的方法: getBackgroundResource() 编辑:我宁愿得到背景颜色的resId。

Android:避免在TextView中的断行string部分

我想避免在string的特定部分中断行。 比方说,我们有这个string: Speed (m/s) 理想情况是要么完全不跳,而要在一行中有完整的string,或者,如果需要跳转,则以这种方式: Speed (m/s) 我想避免的是这样的事情: Speed (m/ s) 有任何想法吗?

你能解释TextView + Gravity + SingleLine和Canvas的行为吗?

我有一个自定义的TextView,它的onDraw方法重写,在文本视图周围绘制一个红色的边框。 当我将重力设置为其他值时 , ANDLineLine = true :不绘制边框。 这有什么理由吗? 有没有解决办法? 下面的截图说明了这个问题:第二个textView没有边框 TL表示TOP | LEFT; C表示CENTER; SL表示单线; T的意思是真的; F表示错误 这里是代码(可以复制/粘贴和运行 – 不需要布局文件) import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.os.Bundle; import android.view.Gravity; import android.widget.RelativeLayout; import android.widget.TextView; public class MyActivity extends Activity { private final int TEXT_VIEW_WIDTH_PX = 400; private final int TEXT_VIEW_HEIGHT_PX = […]

如何使用Paint.getTextBounds()快速获取TextView的宽度和高度?

在Paint类中有一个方法: Paint.getTextBounds()返回一些文本占用的Rect 。 但根据这个答案,它返回一些不同于TextView的宽度/高度的东西。 Q1:有没有办法使用由Paint.getTextBounds()返回的Rect来获取TextView的宽度和高度? 请注意,我确实需要知道宽度/高度。 我会很高兴知道rect上界,可能有2-3%的误差,但是它必须不会更大(并且应该适用于任何不依赖于屏幕分辨率和像素密度的手机),那么TextView边界 Q2:有没有其他QUICK方法确定指定textSize的文本的宽度和高度? 我知道,宽度可以通过Paint.measureText()确定,但是这不会返回高度。 高度可以通过用文本创build新的StaticLayout然后调用StaticLayout.getHeight()来确定,但是这太慢了。 我需要更快的东西。 所有这一切的背景是使AutoFitTextView ,它会自动适合文本在其范围内的文本大小上调或缩小,它应该做到这一点,因为会有很多这样的AutoFitTextViewdynamic改变非常快。

如何在TextView中显示.rtf文件?

我的应用程序需要显示保存在TextView中一堆.rtf文件中的自定义文本。 我在不同的论坛search,我还没有一个明确的解决scheme。 这似乎很容易的权利? 我已经在iOS中开发了一些这样的应用程序,我没有问题在UITextView内显示.rtf文本作为属性的string。 我认为在Android会更容易。 谢谢你的时间

Android EditText(TextView)如何绘制闪烁的光标?

我通过扩展View从头开始制作自己的蒙古语垂直脚本TextView (和EditText )。 我想了解如何在Android TextView源代码中实现闪烁的光标。 它似乎是由Editor类的mEditor实例处理的。 在那个类中,我find了一个drawCursor方法: private void drawCursor(Canvas canvas, int cursorOffsetVertical) { final boolean translate = cursorOffsetVertical != 0; if (translate) canvas.translate(0, cursorOffsetVertical); for (int i = 0; i < mCursorCount; i++) { mCursorDrawable[i].draw(canvas); } if (translate) canvas.translate(0, -cursorOffsetVertical); } 显然,光标本身是某种types的Drawable 。 所以我find了碎片,但我无法通过树木看到森林。 谁能比我更好地理解这一点,用简单的英语告诉我闪烁的光标是如何工作的? 以下是一些我不太了解的具体问题: 游标与TextView (或EditText ), Layout , Editor和Drawable 。 每当光标闪烁时,所有正在重绘的文本或仅光标区域? […]