gpt4 book ai didi

Android,setSpan 两次?

转载 作者:行者123 更新时间:2023-11-30 03:17:04 26 4
gpt4 key购买 nike

假设我有一个 SpannableString,其中为 span 设置了一个 URLSpan,如下所示:

SpannableString ss = new SpannableString(text);
ss.setSpan(new URLSpan("com://my.app"), 3, 6,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

然后我为该跨度设置了另一个 URLSpan。但是第二个 URLSpan 不起作用,第一个起作用。我不能使用 ss.removeSpan(what); 因为我不想删除所有 URLSpans .我该如何解决这个问题?

最佳答案

我在特定跨度(我想为其重置)中使用 getSpans() 来获取它的跨度,然后我使用 removeSpan 将其删除:

SpannableString ss = new SpannableString(text);
ss.setSpan(new URLSpan("com://my.app"), 3, 6,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
URLSpan[] toRemoveSpans = ss.getSpans(3, 6, URLSpan.class);
ss.removeSpan(toRemoveSpans[0]);
ss.setSpan(new MyURLSpan("com://my.app"), 3, 6,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

关于Android,setSpan 两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19875281/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com