Ho una vista testuale con una stringa html con ancore. Quando faccio clic sulla vista testo che voglio chiamare, ad esempio, un metodo chiamato A, e quando faccio clic su un collegamento nella vista testo, voglio chiamare un metodo chiamato B. Ho capito, ma ho un problema: quando clicco su un link, metodo B è chiamato, ma viene chiamato anche il metodo A. Come posso essere sicuro che solo il metodo B, e non B e A, vengono chiamati quando faccio clic su un collegamento?Textview onclicklistener con collegamenti
Il mio codice:
for (int i = 0; i < ingevoegd.length(); i++) {
JSONObject soortingevoegd = ingevoegd.getJSONObject(i);
String type = soortingevoegd.getString("type");
if (type.equals("Vis")) {
String link = "<a href = 'com.aquariumzoeken.pro://Soortweergave?selected="
+ naam + "&type=Vis" + "'>" + naam + "</a>";
text = text.replaceAll(naam, link);
}
}
TextView texttv = (TextView) v.findViewById(R.id.textviewer);
texttv.setText(Html.fromHtml(text));
texttv.setMovementMethod(LinkMovementMethod.getInstance());
E il TextView onclicklistener:
texttv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
switchToEditMode sw = new switchToEditMode();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
Grazie in anticipo, Simon
Hai provato consentendo 'Android: autoLink = "web" per la' TextView e non attaccare il LinkMovement? Penso che dovrebbe funzionare. – Slartibartfast
Purtroppo non funziona. I miei collegamenti non sono cliccabili in questo modo. – Simon
Puoi allegare uno screenshot, trovo difficile visualizzare il layout e perché hai due eventi collegati, c'è spazio vuoto altrove nella TV e questo è dove hai bisogno del Metodo B? – Slartibartfast