I have an EditText
on Android I'd for which I'd like any embedded urls to be clickable. I used the Linkify
class, which has turned them blue and underlined them. However, I can't figure out how to actually make them clickable.
Thanks!
Make EditText non editable in Android To use this just set android:inputType="none" and it will become non editable.
XML:
android:linksClickable="true"
android:autoLink="web|email"
JAVA:
TextView textView = (TextView) findViewById(R.id.textViewId);
textView.setText(Html.fromHtml(html));
textView.setMovementMethod(LinkMovementMethod.getInstance());
For edit text I managed to get links clickable on the following way. First i implemented a Custom MovementMethod as describe here
Java
(Create your edit text from xml or context)
editText.setLinksClickable(true);
editText.setAutoLinkMask(Linkify.WEB_URLS);
editText.setMovementMethod(CustomMovementMethod.getInstance());
//If the edit text contains previous text with potential links
Linkify.addLinks(editText, Linkify.WEB_URLS);
Then to manage that the urls look like links while the user types
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
Linkify.addLinks(s, Linkify.WEB_URLS);
}
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With