Closed yovenny closed 7 years ago
ClickableSpan
是ClickableSpan要拦截事件吗?怎么搞?
点击事件切换到新版本:
mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
Toast.makeText(PullToRefreshUseActivity.this, Integer.toString(position), Toast.LENGTH_LONG).show();
}
});
然后参考这个adapter写法
/**
* 文 件 名: PullToRefreshAdapter
* 创 建 人: Allen
* 创建日期: 16/12/24 19:55
* 邮 箱: AllenCoder@126.com
* 修改时间:
* 修改备注:
*/
public class PullToRefreshAdapter extends BaseQuickAdapter<Status, BaseViewHolder> {
public PullToRefreshAdapter() {
super( R.layout.layout_animation, DataServer.getSampleData(10));
}
@Override
protected void convert(BaseViewHolder helper, Status item) {
switch (helper.getLayoutPosition()%
3){
case 0:
helper.setImageResource(R.id.img,R.mipmap.animation_img1);
break;
case 1:
helper.setImageResource(R.id.img,R.mipmap.animation_img2);
break;
case 2:
helper.setImageResource(R.id.img,R.mipmap.animation_img3);
break;
}
helper.setText(R.id.tweetName,"Hoteis in Rio de Janeiro");
String msg="\"He was one of Australia's most of distinguished artistes, renowned for his portraits\"";
( (TextView)helper.getView(R.id.tweetText)).setText(SpannableStringUtils.getBuilder(msg).append("landscapes and nedes").setClickSpan(clickableSpan).create());
( (TextView)helper.getView(R.id.tweetText)).setMovementMethod(LinkMovementMethod.getInstance());
}
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View widget) {
ToastUtils.showShortToast("事件触发了 landscapes and nedes");
}
@Override
public void updateDrawState(TextPaint ds) {
ds.setColor(Utils.getContext().getResources().getColor(R.color.clickspan_color));
ds.setUnderlineText(true);
}
};
}
i add textview a clickListener,also textview set spannableString with clickSpan. clickSpan was a mention