滚动视图内文本视图中的超链接不可单击
HyperLink in textview inside a scrollview is not clickable
<ScrollView
android:id="@+id/id_scrollview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
android:paddingTop="@dimen/_5sdp"
android:paddingBottom="@dimen/_5sdp">
<LinearLayout
android:id="@+id/id_main"
android:layout_width="wrap_content"
android:gravity="center_vertical"
android:layout_height="match_parent"
android:background="#ffffff"
android:paddingLeft="@dimen/_10sdp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/id_test"
android:layout_width="wrap_content"
android:gravity="center_vertical"
android:layout_height="match_parent"
android:background="#ffffff"
android:paddingLeft="@dimen/_10sdp"
android:orientation="vertical">
<TextView
android:id="@+id/id_key_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:text="@string/key_tv"
android:textStyle="bold"
android:paddingLeft="@dimen/_10sdp"
android:layout_marginRight="@dimen/_15sdp"/>
<TextView
android:id="@+id/id_value_tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15sp"
android:background="#ffffff"
android:gravity="center_vertical"
android:paddingTop="@dimen/_10sdp"
android:paddingLeft="@dimen/_10sdp"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
解析 url:
的代码片段
Intent showDocumentInBrowserIntent = new Intent(Intent.ACTION_VIEW);
showDocumentInBrowserIntent.setData(Uri.parse(clickedItemInViewSanctioned.getmValue()));
startActivity(showDocumentInBrowserIntent);
我正在尝试将 hyperlink(例如 URL)添加到 TextView
(id_value_tv),不幸的是link 不工作。
谁能告诉我这是什么问题?
谢谢。
我正在使用
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
后来我换成了
@Override
public boolean onTouch(View v, MotionEvent event) {
final int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
if (fileValue.equals("No File")) {
showAlert("No file exists.", true);
} else {
Intent showDocumentInBrowserIntent = new Intent(Intent.ACTION_VIEW);
showDocumentInBrowserIntent.setData(Uri.parse(customListRowDataObj.getmValue()));
startActivity(showDocumentInBrowserIntent);
}
}
你应该这样使用setMovementMethod
:
myTextView.setText(Html.fromHtml("<a href=\"http://www.google.com\">google</a> "));
myTextView.setMovementMethod(LinkMovementMethod.getInstance());
//In XML
<TextView
android:text="@string/app_name"
android:id="@+id/titleTxtview1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_title_bg"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/white"
android:textStyle="bold"
custom:typeface="helvetica_bold" />
//In Java
titleTxtview1.setText(Html.fromHtml(EndMessage));
titleTxtview1.setMovementMethod(LinkMovementMethod.getInstance());
<ScrollView
android:id="@+id/id_scrollview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
android:paddingTop="@dimen/_5sdp"
android:paddingBottom="@dimen/_5sdp">
<LinearLayout
android:id="@+id/id_main"
android:layout_width="wrap_content"
android:gravity="center_vertical"
android:layout_height="match_parent"
android:background="#ffffff"
android:paddingLeft="@dimen/_10sdp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/id_test"
android:layout_width="wrap_content"
android:gravity="center_vertical"
android:layout_height="match_parent"
android:background="#ffffff"
android:paddingLeft="@dimen/_10sdp"
android:orientation="vertical">
<TextView
android:id="@+id/id_key_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:text="@string/key_tv"
android:textStyle="bold"
android:paddingLeft="@dimen/_10sdp"
android:layout_marginRight="@dimen/_15sdp"/>
<TextView
android:id="@+id/id_value_tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="15sp"
android:background="#ffffff"
android:gravity="center_vertical"
android:paddingTop="@dimen/_10sdp"
android:paddingLeft="@dimen/_10sdp"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
解析 url:
的代码片段Intent showDocumentInBrowserIntent = new Intent(Intent.ACTION_VIEW);
showDocumentInBrowserIntent.setData(Uri.parse(clickedItemInViewSanctioned.getmValue()));
startActivity(showDocumentInBrowserIntent);
我正在尝试将 hyperlink(例如 URL)添加到 TextView
(id_value_tv),不幸的是link 不工作。
谁能告诉我这是什么问题? 谢谢。
我正在使用
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
后来我换成了
@Override
public boolean onTouch(View v, MotionEvent event) {
final int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
if (fileValue.equals("No File")) {
showAlert("No file exists.", true);
} else {
Intent showDocumentInBrowserIntent = new Intent(Intent.ACTION_VIEW);
showDocumentInBrowserIntent.setData(Uri.parse(customListRowDataObj.getmValue()));
startActivity(showDocumentInBrowserIntent);
}
}
你应该这样使用setMovementMethod
:
myTextView.setText(Html.fromHtml("<a href=\"http://www.google.com\">google</a> "));
myTextView.setMovementMethod(LinkMovementMethod.getInstance());
//In XML
<TextView
android:text="@string/app_name"
android:id="@+id/titleTxtview1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_title_bg"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/white"
android:textStyle="bold"
custom:typeface="helvetica_bold" />
//In Java
titleTxtview1.setText(Html.fromHtml(EndMessage));
titleTxtview1.setMovementMethod(LinkMovementMethod.getInstance());