使用onClick事件自动链接

时间:2016-07-05 07:22:34

标签: android listview hyperlink autolink

我在ListView中显示了一个网址列表。 ListView的每个项目都有TextViewImageViewTextView具有属性autolink="web"

我还在此onItemLongClick中有一个事件:ListView来打开彼此的详细信息。但是,当我对列表中的每个项目进行长时间点击事件时,他们会在TextView打开新页面并打开包含链接网站的浏览器。

如何设置onItemLongClickTextView无法点击链接?我尝试设置TextView.setLinkClickable(false),但它无效。

非常感谢

3 个答案:

答案 0 :(得分:1)

你可以尝试使用: -

 Linkify.addLinks(txtView, Linkify.ALL);

答案 1 :(得分:1)

你可以通过这种方式实现你想要的目标。

    .xml 上的
  1. ,将其添加到TextView

    的TextView ... 机器人:自动链接="网络" 机器人:textIsSelectable ="真"

  2. 关于代码的
  3. 使用ListView点击行为和longClick行为。

答案 2 :(得分:1)

true方法中,返回OnItemClickListener表示您已经使用了click事件,并且不应该将其传递给任何其他侦听器。

根据文档,返回值被描述为 -

  

boolean 如果回调消耗了长按,则为true,否则为

返回true将 NOT 将长点击事件(也是点击事件)传递给<?php if($_POST['formSubmit'] === "Submit") { $errorMessage = ""; if(empty($_POST['formName'])) { $errorMessage .= "<li> You forgot to enter your name! </li>"; } //Doesnt Have List $varName = $_POST['name']; $varEmail = $_POST['email']; $varPhone = $_POST['phone']; $varStreet = $_POST['street']; $varNumber = $_POST['street-number']; $varCity = $_POST['city']; $varPostCode = $_POST['post-code']; $varCountry = $_POST['country']; //Have List $varPeople = $_POST['arrive']; $varTables = $_POST['tables']; $varTime = $_POST['time']; $varComment = $_POST['comments']; if(empty($errorMessage)) { //Sql Connect $db = mysql_connect ('sql999.byethost9.com','b9_9999999','password'); if(!$db) die("Error connecting to MySQL database."); mysql_select_db('b9_9999999_database',$db); $sql = "INSERT INTO form2 (Name, Email, Phone, Street, Number, City, PostCode, Country, People, Tables, Time, Comment) VALUES (". //Doesnt Have List Dropdown PrepSQL($varName) . ", ". PrepSQL($varEmail) . ", ". PrepSQL($varPhone) . ", ". PrepSQL($varStreet) . ", ". PrepSQL($varNumber) . ", ". PrepSQL($varCity) . ", ". PrepSQL($varPostCode) . ", ". PrepSQL($varCountry) . ", ". //Have List Dropdown PrepSQL($varPeople) . ", ". PrepSQL($varTables) . ", ". PrepSQL($varTime) . ", ". PrepSQL($varComment) . ") "; mysql_query($sql); header('Location:thankyou.html'); exit(); } } //function:PrepSQL() //use stripslashes and mysql_real_escape_string PHP functions //tosanitize a string for use in an SQL query // //also puts single quotes around the string // function PrepSQL($value) { //Stripslashes if(get_magic_quotes_gpc()) { $value = stripslashes($value); } //Quote $value = "'" . mysql_real_escape_string($value) . "'"; return($value); } ?>