如何将自定义视图附加到TextView内部的可单击范围

时间:2019-01-20 18:00:09

标签: android-studio textview clickablespan

通常的想法是:我有一个ScrollView,其中有一个TextViewTextView的某些部分是ClickableSpan。当我单击ClickableSpan之一时,我想在其上附加自定义工具提示。工具提示只能附加到View。通过使用onClick的{​​{1}}方法,其中的ClickableSpan参数是父View的参数,因此工具提示将始终附加到整个{{1} },但我希望将其附加到TextView上。我不知道如何实现它,以及如何使用谷歌搜索。

这是可点击范围的创建:

TextView

这是我显示工具提示的方式:

ClickableSpan

while (matcher.find()) { int start = matcher.start(); int end = matcher.end(); final String chordName = matcher.group(1); ClickableSpan clickSpan = new ClickableSpan() { @Override public void onClick(View view) { // Here the "view" is of the parent TextView, // but I want it to be a custom View of the unique // ClickableSpan so I can pass it to the custom tooltip } }; spannable.setSpan(clickSpan, start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); } TextView tabsView = findViewById(R.id.tabs); tabsView.setText(spannable, TextView.BufferType.SPANNABLE); tabsView.setMovementMethod(LinkMovementMethod.getInstance()); 部分是我应该传递将附加工具提示的new Tooltip.Builder(context) .anchor(view) .autoAdjust(true) .content(content) .withTip(new Tooltip.Tip(16, 16, R.color.colorPrimary, 4)) .into((ViewGroup)((Activity)context).findViewById(R.id.chordsViewRoot)) .show(); 的地方,我希望将其附加到我单击的.anchor(view)上。

What I want

What currently happens

This is the library I'm using for custom tooltips

0 个答案:

没有答案