我有一个TextView和文字一样的Android Linkify文本 - 在单文本视图Spannable文字 - 像Twitter的鸣叫
“这是关键字的简单文本和链接浏览”
在上面的文字我想使..
点击链接去打开URL 和 点击该关键字Ø在我的应用程序中笔新活动
也 甚至有整个TextView的点击事件。
请帮我找到解决方案。 谢谢, MKJParekh
我有一个TextView和文字一样的Android Linkify文本 - 在单文本视图Spannable文字 - 像Twitter的鸣叫
“这是关键字的简单文本和链接浏览”
在上面的文字我想使..
点击链接去打开URL 和 点击该关键字Ø在我的应用程序中笔新活动
也 甚至有整个TextView的点击事件。
请帮我找到解决方案。 谢谢, MKJParekh
我用我回答在这里This Question
对于我已经使用这个LinkEnabledTextView并成为容易的,我做任务同样的事情。
使关键字和链接到不同的TextViews。
然后在完成后设置TextView.onClickListener()。
这是最简单的方式,更多的逻辑方式。
是的,我知道我可以这样做......但只需要一个文本视图 – MKJParekh
生成以下方式你的TextView:
TextView t3 = (TextView) findViewById(R.id.text3);
t3.setText(Html.fromHtml("This is the Simple Text with
<a href=\'http://www.google.com\'>Keyword</a> and the
<a href='startActivityFromLink://some_info'>Link</a> to browse"));
t3.setMovementMethod(LinkMovementMethod.getInstance());
指定的活动方式如下:
<activity android:name=".TestActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="startActivityFromLink" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
,我认为它应该工作。可能需要一些调整。我没有时间去测试它。让我知道它是否有效。
你可以做的是创建一个自定义ClickableSpan
如下,
class MyCustomSpannable extends ClickableSpan
{
String Url;
public MyCustomSpannable(String Url) {
this.Url = Url;
}
@Override
public void updateDrawState(TextPaint ds) {
// Customize your Text Look if required
ds.setColor(Color.YELLOW);
ds.setFakeBoldText(true);
ds.setStrikeThruText(true);
ds.setTypeface(Typeface.SERIF);
ds.setUnderlineText(true);
ds.setShadowLayer(10, 1, 1, Color.WHITE);
ds.setTextSize(15);
}
@Override
public void onClick(View widget) {
}
public String getUrl() {
return Url;
}
}
而且利用其onClick()
打开一个活动或URL。我在WebView
中添加了一个加载URL的演示。
String text = "http://www.google.co.in/";
SpannableStringBuilder stringBuilder = new SpannableStringBuilder(text);
MyCustomSpannable customSpannable = new MyCustomSpannable(
"http://www.google.co.in/"){
@Override
public void onClick(View widget) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(customSpannable.getUrl()));
startActivity(intent);
}
};
stringBuilder.setSpan(customSpannable, 0, text.length(),
Spannable.SPAN_INCLUSIVE_INCLUSIVE);
textView.setText(stringBuilder, BufferType.SPANNABLE);
textView.setMovementMethod(LinkMovementMethod.getInstance());
感谢您的答案,它帮助了我很多。 – MKJParekh
我想你应该检查:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/text/Link.html http://developer.android.com/资源/文章/ wikinotes-linkify.html –
嗯,我想这就是你要找的[Android自定义超链接TextView](http://webcache.googleusercontent.com/search?q=cache:http://www。 orangeapple.org/) –
@Lalit Poptani它帮助我感谢你 – user609239