you have to use a SpannableString
if you do not want to have more than 1 TextView
.
Edit:
For every String you can register a ClickableSpannable, for instance:
private class MyClickableSpannable extends ClickableSpan {
private final String mStringToShow;
public MyClickableSpannable(String stringToShow) {
mStringToShow = stringToShow;
}
@Override
public void onClick(View widget) {
Toast.makeText(context, mStringToShow, Toast.LENGHT_SHORT).show();
}
}
and to set the listener:
String myString = "Hello How Are You";
String hello = "Hello";
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(myString);
spannableStringBuilder.setSpan(
new MyClickableSpannable(hello), startIndexOfHello,
startIndexOfHello + hello.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);