package com.TextHtml;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.text.Html;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.text.style.URLSpan;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class TextHtml extends Activity {
/* * Called when the activity is first created. */
private TextView tv;
static Context ctx = null ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ctx = this ;
tv = (TextView) findViewById(R.id.tv);
String htmlLinkText= " <a href=\\" +"http://www.baidu.com/><u>我的CSDN博客 </u></a>";
tv.setText(Html.fromHtml(htmlLinkText));
tv.setMovementMethod(LinkMovementMethod.getInstance());
CharSequence text = tv.getText();
if (text instanceof Spannable){
int end = text.length();
Spannable sp = (Spannable)tv.getText();
URLSpan[] urls = sp.getSpans( 0 , end, URLSpan. class );
SpannableStringBuilder style = new SpannableStringBuilder(text);
style.clearSpans(); // should clear old spans
for (URLSpan url : urls){
MyURLSpan myURLSpan = new MyURLSpan(url.getURL());
style.setSpan(myURLSpan,sp.getSpanStart(url),sp.getSpanEnd(url),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
tv.setText(style);
}
}
private static class MyURLSpan extends ClickableSpan{
private String mUrl;
MyURLSpan(String url) {
mUrl = url;
}
@Override
public void onClick(View widget) {
// TODO Auto-generated method stub
Toast.makeText(ctx, " hello! " ,Toast.LENGTH_LONG).show();
}
}
}
分享到:
相关推荐
Android-TextView-LinkBuilder-master,创建可点击的链接,博客附件,效果请查看博客相对应项目。
Android TextView-LinkBuilder Insanely easy way to create clickable links within a TextView. While creating Talon for Twitter, one of the most difficult things I encountered was creating these ...
When android:autoLink="all" or Linkify.addLinks(textView, Linkify.ALL) is used to add links to web URLs, phone-numbers, map addresses or email addresses in a TextView, Android uses a class known as ...
一、[Android实例]实现TextView里的文字有不同颜色 转eoe:http://www.eoeandroid.com/thread-4496-1-1.html import android.text.Html; TextView t3 = (TextView) findViewById(R.id.text3); t3.setText( ...
当使用android:autoLink或Linkify.addLinks将链接添加到TextView时,Android使用称为LinkMovementMethod的类来突出显示焦点时的链接,并在单击它们时分派Intent。 BetterLinkMovementMethod改善了...
Android源代码 TextView超链接实现用了2种方法: (1) XML文件实现 (2) java源代码实现
链接文本视图LinkTextView 是一个 Android TextView,用于添加高度可定制的彩色链接。特征易于添加链接和附加数据。 设置链接正常颜色和按下颜色。 设置背景正常颜色和按下颜色。样本有关此库的常见用法,请参阅 。...
LinkTextView Made TextView with ClickableSpan more easy Gradle ...Usage // the content should be set for TextView ... .linkColor(ContextCompat.getColor(this,R.color.link)) .addOnLink
Android文本链接作者Hoang Le 在TextView中创建可点击链接的简便方法。 从复制@ 添加更多方法设置链接字体大小设置链接字体字体
本文实例讲述了Android TextView添加超链接的方法。分享给大家供大家参考,具体如下: public class Link extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate...
link如你所见,上面的效果就是通过Adjuster来实现的。并且这种拔插式的设计,使得你能够随时在同一个SuperTextView上使用新的Adjuster,你所有需要做的事情就是创建一个新的Adjuster,然后调用setAdjuster()。之前@...
LinkEnableTextView Android自定义超链接TextView
ReView A view to help developers and designers view the View's font...download link or Qrcode Usage Step 1 Add the JitPack repository to your build file allprojects { repositories { ... maven { ur
com.link.foldtextviewlibrary.FoldTextView android:id="@+id/fold_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_ma
textview1.setText(linktext); //AutoCompleteTextView AutoCompleteTextView autv_1 = (AutoCompleteTextView)findViewById(R.id.autv_1); String[] str = {"ab","abc","abcd"}; ArrayAdapter<String> ...
本文实例为大家分享了Android实现点击获取验证码60秒后重新获取的具体代码,供大家参考,具体内容如下 上代码 /** * Created by Xia_焱 on 2017/5/7. */ public class CountDownTimerUtils extends ...
View Context Fragment Activity ViewGroup TextView String其他视图/ ** *扩展方法,提供对{@link View#getResources()#getString(int)}的更简单访问。 * / fun View.getString(stringResId:Int):字符串=...
TextView registerScreen = (TextView) findViewById(R.id.link_to_register); // Listening to register new account link registerScreen.setOnClickListener(new View.OnClickListener() { public ...
* @param progressType {@link ProgressType}. */ public void setProgressType(ProgressType progressType) { this.mProgressType = progressType; resetProgress(); invalidate(); } /** * 重置进度。 ...
timeTextView=(TextView) findViewById(R.id.timeText); startButton=(Button) findViewById(R.id.startButton); dis=soundPool.load(this, R.raw.dis, 1); gameSrvice=new GameServiceImpl(config); ...