У меня есть CheckBox со строкой, в которой говорится: «Я прочитал и понял условия». Теперь я хочу сделать слова «условия и положения» ссылкой, которая открывает alertdialog, где условия и условия могут быть прочитаны. Ничего особенного.Android: открыть alertdialog из части строки?
Я думаю, что-то в строке:
<string name="cont_agree">I have read and understood the <a ref="open alertdialog">terms and conditions.</a></string>
Можно ли, и что я должен использовать, где он теперь говорит, что «открытая alertdialog»? Если это невозможно сделать, как мне это сделать?
Дополнение Чтобы открыть URL вы бы использовать этот код:
<string name="cont_agree"><a ref="http://www.stackoverflow.com">Stackoverflow</a></string>
Но как открыть alertdialog, или сказать, другой экран, из строки? Я видел приложения, которые делают это так, возможно, конечно, но как?
EDIT: Это код, я использую для SpannableStringBuilder:
SpannableStringBuilder text = new SpannableStringBuilder();
text.append(getString(R.string.before));
//Now create a ClickableSpan
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View view) {
d.show(); //Here dialog will be displayed
}
};
//Now append the TOS string
text.append(getString(R.string.popup));
//Declare that the "TOS" string is a clickableSpan
text.setSpan(clickableSpan, getString(R.string.before).length(),getString(R.string.before).length()+getString(R.string.popup).length(), 0); //Check on API setSpan method
((CheckBox)findViewById(yourview)).setMovementMethod(LinkMovementMethod.getInstance());
((CheckBox)findViewById(yourview)).setText(text, BufferType.SPANNABLE);
я все еще получаю некоторые маркеры на первой линии "text.append". Множественные маркеры на этой линии:
- Возврат типа для метода отсутствующего
- Синтаксис ошибку на маркер «)», {ожидается, после того, как этот маркер
- R.string.before не может быть разрешен к типу
- Синтаксическая ошибка на маркер «)», недействительным VariableDeclaratorId
- Синтаксическая ошибка на маркер «добавить», идентификатор ожидаемого после этого маркера
Проверить эту ссылку [SO] (HTTP: // StackOverflow .com/questions/12069811/android-hyperlinks-on-textview-in-custom-alertdialog-not-clickable) –
Да, я видел это, но он пытается открыть ссылки FROM alertdialog, если я не ошибаюсь. Я хочу открыть alertdialog из обычной строки, используемой в флажке. Поэтому я не нашел ответа. – andysando
Мне очень нужна помощь в этом. Кто-нибудь понял? – andysando