2016-07-05 14 views
5

Ich habe eine Liste der Web-Adressanzeige in einem ListView. Jeder Eintrag von ListView hat eine TextView und eine ImageView. TextView hat das Attribut autolink = "web".autoLink mit onClick-Ereignis

Ich habe auch Ereignis: onItemLongClick in dieser ListView, um Details voneinander zu öffnen. Aber wenn ich lange auf jedes Element in der Liste klicke, öffnen sie eine neue Seite und öffnen den Browser mit der Link-Website in TextView.

Wie kann ich einstellen, wenn onItemLongClick, der TextView kann nicht in Link klicken? Ich versuche TextView.setLinkClickable (false) setzen, aber es funktioniert nicht.

Vielen Dank

Antwort

1

Sie können auf diese Weise erreichen, was Sie wollen.

  1. auf Ihrem .xml, fügen Sie diese zum TextView:

    Textview ... android: Autolink = "web" android: textIsSelectable = "true"

  2. auf Ihrem Code verwenden Sie ListView klicken Sie Verhalten und LongClick-Verhalten.

+0

Es ist nicht Arbeit :( –

+0

Ich habe es mit Android Studio auf einem echten Gerät mit MM versucht. Bitte post einige Code, vielleicht ist das Problem woanders. – JJ86

+0

@ TrươngVũNgọc meine schlechte, vermeiden Einfügen textView.setLinksClickable (false Ich werde meine Antwort bearbeiten. – JJ86

1

U versuchen verwenden: -

Linkify.addLinks (txtView, Linkify.ALL);

+0

Entschuldigung, ich glaube, Sie haben meine Frage verpasst. Btw, es ist nicht Arbeit –

1

In Ihrem onItemLongClick() Methode zurückkehren true um anzuzeigen, dass das Click-Ereignis verbraucht haben, und es sollte nicht an andere Zuhörer weitergegeben werden.

Nach der Dokumentation, wird der Rückgabewert wie beschrieben -

boolean true, wenn der Rückruf, um die lange klicken, ansonsten false

verbraucht

Rückkehr wahren Willen NICHT den Pass Long-Click-Ereignis, das auch ein Click-Ereignis ist, an die OnItemClickListener.

+0

Ich habe diese Lösung versucht, aber es ist nicht Arbeit zw –

Verwandte Themen