gpt4 book ai didi

android - 我们如何打开TextView的链接到Webview

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:53:29 24 4
gpt4 key购买 nike

当我点击 TextView 的链接时,如何将 TextView 的链接打开到 WebView 中。

最佳答案

Spanned spanned = Html.fromHtml("<a href=\"http://google.com\">google.com</a>");
textView.setText(spanned);

编辑:这不是处理链接点击的理想方式,但我不知道任何其他方式。

您的主要 Activity 包含一个带有链接的 TextView。链接 URL 具有自定义方案。

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView link = (TextView)findViewById(R.id.link);
link.setText(
Html.fromHtml("<a href='myscheme://www.google.com'>link</a>"));
link.setMovementMethod(LinkMovementMethod.getInstance());
}
}

单击此链接时,Android 使用链接 URL 启动带有 ACTION_VIEWActivity。假设您有一个 WebViewActivity,它使用此自定义方案处理 URI。它获取传递的 URI 并将其方案替换为 http

public class WebViewActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );

if( savedInstanceState == null ) {
String url =
getIntent().getDataString().replace("myscheme://", "http://");
// do something with this URL.
}
}
}

要处理自定义 URI 方案,WebViewActivity 必须在 AndroidManifest.xml 文件中有一个 Intent 过滤器:

<activity android:name=".WebViewActivity" android:exported="false">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="myscheme" />
</intent-filter>
</activity>

关于android - 我们如何打开TextView的链接到Webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7255249/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com