我很累人在文本中用虛線或虛線劃出一個特定的單詞,並且還可點擊跨度。自定義跨度帶虛線的下劃線文本Android
我還沒有找到有人可以幫助我的解決方案。
SpannableStringBuilder sb = new SpannableStringBuilder(text); List listmot = new ArrayList();
listmot=db.getAlldef();
for(int i=0;i<listmot.size();i++)
{
String mot = (listmot.get(i)).get_mot();
final String def = (listmot.get(i)).get_definition();
Log.v(null, mot);
Pattern p = Pattern.compile(mot, Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(text);
while (m.find()){
// Typeface tf = Typeface.createFromAsset(getApplicationContext().getAssets(),"fonts/font.ttf");
//sb.setSpan(new CustomTypefaceSpan("",tf), m.start(), m.end(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
sb.setSpan(new ClickableSpan() {
@Override
public void onClick(View widget) {
// Toast.makeText(getApplicationContext(), def,Toast.LENGTH_LONG).show();
int[] values = new int[2];
widget.getLocationOnScreen(values);
Log.d("X & Y",values[0]+" "+values[1]);
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
AndroidSQLiteTutorialActivity.this);
alertDialog.setMessage(def);
alertDialog.setCancelable(true);
AlertDialog alert11 = alertDialog.create();
alert11.setCanceledOnTouchOutside(true);
alert11.show();
}
}, m.start(), m.end(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
textjson.setText(sb);
textjson.setMovementMethod(LinkMovementMethod.getInstance());
您是否找到了解決方案? – JU5T1C3 2015-07-07 09:44:47