Linkify добавляет текст в конец ссылок - PullRequest
4 голосов
/ 15 июня 2011

Я хотел бы добавить ссылку на текстовое представление и иметь следующий код:

TextView textview = (TextView) findViewById(R.id.mytext);
Pattern myPattern = Pattern.compile("WordToBeLinked");
String link = "http://mydomain.com/something";
Linkify.addLinks(textview, myPattern, link);

Так что все работает как надо: слово «WordToBeLinked» связано и открывает браузер со ссылкойНО каким-то образом Linkify добавляет «WordToBeLinked» к URL-адресу, поэтому вызываемый URL-адрес выглядит следующим образом:

http://mydomain.com/somethingWordToBeLinked

Может кто-нибудь сказать, что я сделал не так?Спасибо

Ответы [ 2 ]

5 голосов
/ 15 июня 2011

Вы должны использовать TransformFilter.Надеюсь, что это поможет.

            TextView textview = (TextView) findViewById(R.id.mytext);
            textview .setText("WordToBeLinked");

            TransformFilter mentionFilter = new TransformFilter() {
                public final String transformUrl(final Matcher match, String url) {
                    return new String("http://mydomain.com/something");
                }
            };

            Pattern pattern = Pattern.compile(".");
            String scheme = "";
            Linkify.addLinks(textview, pattern, scheme, null, mentionFilter);

Поскольку в вашем случае нет шаблона и схемы, поэтому они просто заполнитель.

0 голосов
/ 15 июня 2011

Это точное поведение, описанное в документах linkify .

Если вы хотите заменить свое слово ссылкой, выполните:

, вы можете использоватьперегруженный метод и используйте фильтр преобразования, чтобы переписать окончательный URL.

...