spannablestring用在fragment中,设置点击监听无效
来源:互联网 发布:阿里云域名可以转让吗 编辑:程序博客网 时间:2024/05/18 14:44
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
TextView textView = (TextView) view.findViewById(R.id.textview);
String str = "Click me!";
String txt = str + "Hello world!";
SpannableString spannableString = new SpannableString(txt);
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View widget) {
//Do something.
if(isAdded()) {
Toast.makeText(getActivity(), "You have clicked!", Toast.LENGTH_LONG).show();
// avoidHintColor(widget);
}
}
@Override
public void updateDrawState(@NonNull TextPaint ds) {
super.updateDrawState(ds);
ds.setColor(getResources().getColor(android.R.color.holo_red_dark));
ds.setUnderlineText(false);
ds.clearShadowLayer();
}
};
spannableString.setSpan(clickableSpan,0,str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(spannableString);
textView.setMovementMethod(LinkMovementMethod.getInstance());
}
这样做好后发现点击设置无效果二设置的颜色却有效果,然后把代码如下改正后,可以了
tv_reap_null = new TextView(context);
tv_reap_null.setGravity(Gravity.CENTER);
tv_reap_null.setPadding(0, 50, 0, 0);
tv_reap_null.setTextColor(Color.parseColor("#676767"));
tv_reap_null.setTextSize(15);
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, 500);
tv_reap_null.setLayoutParams(params);
SpannableString string = new SpannableString(“dddddddddddddddddd”);
string.setSpan(new Click(), 10, 12, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv_reap_null.setText(string);
tv_reap_null.setMovementMethod(LinkMovementMethod.getInstance());//设置点击监听
mainView.addView(tv_reap_null);
0 0
- spannablestring用在fragment中,设置点击监听无效
- 关于在fragment中监听按钮的点击事件
- 在Activity/Fragment中设置搜索键的监听事件
- 在fragment中添加点击事件,给Linearlayout添加点击监听
- 在Fragment中设置控件点击方法,执行失败。
- 解决fragment中listView或者gridView给item设置监听,点击空指针问题
- ListView点击监听无效
- fragment中使用setOnItemClickListener监听无效的解决办法
- 在activity中使用多个fragment时设置第一个fragment的沉浸栏有效,其他无效解决办法
- 在activity中使用多个fragment时设置第一个fragment的沉浸栏有效,其他无效解决办法
- 如何在Fragment中监听触摸事件
- 在Fragment中监听返回BACK按键
- 在Fragment中监听返回键
- 如何在Fragment中监听触摸事件
- Android - 监听Activity点击无效
- Spinner监听点击事件无效
- 在videoview中增加点击监听事件
- 在RecyclerView中自定义Item点击监听
- Java中的简单工厂模式
- WCF服务端为List,生成的代理类也为List的命令
- js 中 obj.onclick= func() 和 obj.onclick func 分析
- list列表删除元素
- 虚拟机如何与主机之间直接复制粘贴文件
- spannablestring用在fragment中,设置点击监听无效
- 第一次使用Ubuntu的总结
- IOS之block与闭包
- iOS音频播放 (八):NowPlayingCenter和RemoteControl
- 关于navicat连接oracle报错ORA-28547
- [笔记]Android中在外部编译kernel module示例
- hadoop配置
- Intents and Intent Filters
- iOS移动开发中监听键盘移动的事件,自动调整view-(1)-UIKeyboardFrameEndUserInfoKey