`
hemowolf
  • 浏览: 154614 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

TextView支持拷贝&粘帖

阅读更多

   让TextView支持长按弹出系统自带的拷贝、粘贴功能,发现国内外的论坛提供的解决方法都不怎么理想。多数用editview来模仿,不过实现的效果实在不怎么好。
   从android sdk 11起google添加了新api TextIsSelectable控制TextView是否支持拷贝、粘帖功能,不过这个功能在v11以下则不那么好彩了。
   查阅TextView源码发现setTextIsSelectable实际调用的是Editor类的相应方法,而Editor里面控制了拷贝、粘帖功能。顺藤摸瓜通过反射获取到mEditor变量再调用setTextIsSelectable里调用的方法,调出拷贝、粘帖功能。似乎这是个很好的方法。不过很遗憾在系统为4.x的不同设备里测试发现都不成功,不是没有mEditor变量就是mEditor返回null。看来这个Editor在不同的厂商也有不同的实现,google也把这个类标为hide。

   又仔细看了看TextView源码,发现setTextIsSelectable顺序调用了以下几个函数

 

	setFocusableInTouchMode(true);
	setFocusable(true);
	setClickable(true);
	setLongClickable(true);
	setMovementMethod(  ArrowKeyMovementMethod.getInstance());
	setText(tv.getText(),BufferType.SPANNABLE );

  在v4、v8系统测试顺利调出拷贝、粘帖功能。

分享到:
评论
2 楼 hemowolf 2013-06-27  
ladyweiwei 写道
请问这个源码可以看看吗?在网上搜不到啊

在sdk 4、8系统用下列方法我测试顺利调出拷贝、粘帖功能。
setFocusableInTouchMode(true); 
setFocusable(true); 
setClickable(true); 
setLongClickable(true); 
setMovementMethod(  ArrowKeyMovementMethod.getInstance()); 
setText(tv.getText(),BufferType.SPANNABLE ); 

sdk11以上用setTextIsSelectable
1 楼 ladyweiwei 2013-06-25  
请问这个源码可以看看吗?在网上搜不到啊

相关推荐

    安卓源码包 UI布局 textView SQLSEVER&安卓 Tab选项卡Android例子源码 33个合集.zip

    安卓源码包 UI布局 textView SQLSEVER&安卓 Tab选项卡Android例子源码 33个合集: [四次元]Android ViewPager Fragment实现选项卡.rar [四次元]Android 操作数据库实例.zip [四次元]android 通过jdts.jar 连接SQL...

    android TextView 支持CSS样式

    ### Android TextView 支持CSS样式详解 #### 一、引言 在Android开发过程中,为了增强界面的表现力和可维护性,开发者常常需要利用到HTML和CSS的技术来丰富`TextView`的内容展示。虽然原生的Android SDK并没有直接...

    findViewById的快捷工具类

    支持链式操作 vq id R id TextView1 text "I find hello world" ; vq id R id button1 text "find it " clicked this "onClickMethod" ; vq id R id imageView1 image android R ...

    自定义TextVIew显示GIF图片

    在Android开发中,有时我们需要在TextView中展示动态的GIF图像,而系统默认的TextView并不支持直接播放GIF。为了实现这一功能,我们需要自定义一个TextView,并通过一系列技术手段来处理GIF文件。以下是如何在自定义...

    自定义TextView支持第三方字体库(以隶书为例)

    本教程将详细讲解如何自定义一个TextView来支持第三方字体库,以隶书字体为例,帮助你创建独特的用户界面。 首先,我们需要了解Android系统默认只提供了一部分基本的字体,如宋体、黑体等,如果想要使用如隶书这样...

    Android Textview 支持ClickableSpan(富文本)

    *支持Textview设置富文本点击 *设置Textview 中部分字设置可以点击、变色,设置setMovementMethod(LinkMovementMethod.getInstance())后滑动与Textview局部点击冲突...都已经解决. *解决点击空白区域依然有点击事件 ...

    Android 实现TextView上下滚动效果

    在Android开发中,实现TextView的上下滚动效果可以让信息在有限的空间内持续展示,提升用户体验。以下将详细讲解如何实现这一功能。 首先,我们要明白TextView是Android SDK中的一个基础组件,用于显示单行或多行...

    支持TextView默认支持的所有标签,支持自定义,取代安卓默认的Html.TagHandler.zip

    支持TextView默认支持的所有标签,支持自定义,取代安卓默认的Html.TagHandlerHtml标签处理程序支持TextView默认支持的所有标签,支持自定义,取代安卓默认的Html.TagHandler特性支持TextView默认支持的标签支持...

    android textview图文混排支持GIF图

    在Android开发中,TextView是用于显示文本的基本组件,但原生的TextView并不支持直接显示GIF动图。然而,随着用户界面的需求日益多样化,开发者常常需要在文本中插入图片,甚至是动态的GIF图片,来增强信息的表达力...

    安卓textView相关-Android去掉TextView的上下边距.zip

    在Android开发中,`TextView` 是一个非常基础且重要的组件,用于显示文本。然而,在实际应用中,我们可能会遇到`TextView`默认带有上下边距的问题,这可能不符合我们的设计需求或者影响界面布局的美观性。标题"安卓...

    android TextView 显示Gif 图片

    `TextView`默认并不支持直接显示GIF动画,因此需要通过一些特殊的方式来实现这一功能。本篇将详细介绍如何在`Android TextView`中显示GIF动态图片。 首先,我们需要理解`TextView`的基本工作原理。`TextView`是...

    安卓textView相关-支持放大缩小的TextView使用.rar

    本资源“安卓textView相关-支持放大缩小的TextView使用.rar”似乎包含了一个定制的TextView实现,允许用户放大和缩小文本,从而提高用户体验,特别是对于阅读大量文本的应用场景。 TextView的默认行为并不支持直接...

    TextView完美实现HTML标签数据(支持图片适配屏幕以及图片点击)

    在Android开发中,TextView是一个非常常见的控件,用于显示单行或多行文本。然而,TextView不仅可以展示纯文本,还可以处理HTML格式的数据,这样我们就可以在应用中实现丰富的文本排版,包括字体、颜色、链接、图片...

    旋转TextView文字显示方向

    `android:rotation`属性是在API Level 11(Android 3.0, Honeycomb)引入的,所以如果你需要支持更低版本的Android系统,你需要使用`android.support.v4.view.ViewPropertyAnimator`或者自定义View来实现类似的效果...

    PTTextView,支持google&paratype; pt字体族的textview实现.zip

    虽然描述中提到“不推荐-改用新的textview android:font属性”,这可能意味着随着 Android 系统的发展,原生的 TextView 已经支持了更丰富的字体设置,包括 Google Fonts。但如果你的应用需要特定的 Google 或 ...

    Android代码-支持TextView默认支持的所有标签

    支持TextView默认支持的标签 支持自定义标签,接口类似Html.TagHandler 1 自定义标签: /** * 解析哈哈哈 */ public class SpanTagHandler implements HtmlTagHandler.TagHandler { private String fontColor =...

    Android通过textview设置状态

    在Android开发中,TextView是用于显示单行或多行文本的视图组件,它在界面设计中扮演着重要的角色。为了使TextView更具交互性,我们常常需要根据用户操作或特定条件来改变其显示状态,比如选中、聚焦或者按下等。在...

    Android如何通过TextView实现超链接的跳转

    在Android开发中,TextView是用于显示单行或多行文本的常用组件。当需要在TextView中嵌入超链接并实现点击跳转时,开发者通常会利用Android的`TextView`特性和`Linkify`类来完成这一功能。下面我们将详细介绍如何...

    旋转TextView文字显示

    在Android开发中,TextView是用于显示文本的基本组件。在某些设计需求中,我们可能需要让TextView的文字呈现旋转状态,比如创建一个垂直显示的标题或者实现某种动态效果。本篇文章将详细探讨如何实现“旋转TextView...

    安卓textView相关-advanced-textview各种高级功能的textview.rar

    4. **动画效果**:高级TextView可能支持各种动画效果,如淡入淡出、滚动文本、闪烁等。这可以通过Android的Animation框架或属性动画API实现。 5. **可点击事件**:TextView不仅可以显示文本,还可以响应用户的触摸...

Global site tag (gtag.js) - Google Analytics