Android - LinkMovementMethod.getInstance() 当用户在 link 上释放滚动条时自动打开浏览器
Android - LinkMovementMethod.getInstance() open automatically browser when user release scroll on a link
这是一个可用性问题
我使用 LinkMovementMethod.getInstance()
允许文本视图滚动和 URLS 可点击(打开浏览器),问题是当用户在 [=44= 上释放滚动时,这会造成混乱] 它会自动打开 Google Chrome 浏览器,而不是什么都不做。每次滚动都会打开浏览器(因为有很多 links)。
所以,在打开浏览器之前,我想显示一个询问 "Do you want open the link?" 的对话框,我尝试了很多,但我无法识别任何听众
其他解决方案只有在单击和释放在同一时间执行时才打开浏览器link(在这种情况下更能保证用户没有进行任何滚动)
我也乐于接受其他建议
如您所见link很多
XML简述:
<etc.TextViewCustomizado
android:layout_width="match_parent"
app:nomeFonte="Cairo_Regular"
android:textSize="17sp"
android:id="@+id/textview"
android:textColor="@android:color/black"
android:textColorLink="@color/azul2escuro"
android:layout_height="match_parent" />
因此,如您所见,它只是一个包含所有信息的文本视图,由以下人员传递:
textview.setText(Html.fromHtml(
getResources().getString(R.string.lic1)
));
textview.setMovementMethod(LinkMovementMethod.getInstance());
资源R.string.lic
:
<![CDATA[
Programming libraries (Linguagens de programação)
<br>
<a href="https://github.com/rengwuxian/MaterialEditText">MaterialEditText</a>
by
<a href="https://github.com/rengwuxian">rengwuxian</a>
licensed under
<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>
..continues
谢谢
我找到了替代方法,使用 WebView
XML:
<LinearLayout
...>
<WebView
android:id="@+id/wv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
Activity:
private WebView wv = (WebView) findViewById(R.id.wv);
wv.loadData(getResources().getString(R.string.lic1), "text/html; charset=utf-8",null);
这是一个可用性问题
我使用 LinkMovementMethod.getInstance()
允许文本视图滚动和 URLS 可点击(打开浏览器),问题是当用户在 [=44= 上释放滚动时,这会造成混乱] 它会自动打开 Google Chrome 浏览器,而不是什么都不做。每次滚动都会打开浏览器(因为有很多 links)。
所以,在打开浏览器之前,我想显示一个询问 "Do you want open the link?" 的对话框,我尝试了很多,但我无法识别任何听众
其他解决方案只有在单击和释放在同一时间执行时才打开浏览器link(在这种情况下更能保证用户没有进行任何滚动)
我也乐于接受其他建议
如您所见link很多
XML简述:
<etc.TextViewCustomizado
android:layout_width="match_parent"
app:nomeFonte="Cairo_Regular"
android:textSize="17sp"
android:id="@+id/textview"
android:textColor="@android:color/black"
android:textColorLink="@color/azul2escuro"
android:layout_height="match_parent" />
因此,如您所见,它只是一个包含所有信息的文本视图,由以下人员传递:
textview.setText(Html.fromHtml(
getResources().getString(R.string.lic1)
));
textview.setMovementMethod(LinkMovementMethod.getInstance());
资源R.string.lic
:
<![CDATA[
Programming libraries (Linguagens de programação)
<br>
<a href="https://github.com/rengwuxian/MaterialEditText">MaterialEditText</a>
by
<a href="https://github.com/rengwuxian">rengwuxian</a>
licensed under
<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>
..continues
谢谢
我找到了替代方法,使用 WebView
XML:
<LinearLayout
...>
<WebView
android:id="@+id/wv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
Activity:
private WebView wv = (WebView) findViewById(R.id.wv);
wv.loadData(getResources().getString(R.string.lic1), "text/html; charset=utf-8",null);