Кликабельный диапазон в проблемах TextView с ScrollView

У меня есть фрагмент с текстовым представлением со списком интерактивных слов. Текстовое представление, которое содержится в относительном макете, можно прокручивать с помощью прокрутки. Если я использую прокрутку, трудно обработать событие щелчка в интерактивном диапазоне, но если я удалю прокрутку, событие щелчка работает правильно.

это код макета

<ScrollView android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:id="@+id/scroll1"
            android:scrollbars="vertical"
            android:fadingEdge="vertical">
    <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"
            android:padding="40dp">
    <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
                android:id="@+id/sinonimiContainer"
                android:background="@drawable/layerlist"
                android:layout_centerHorizontal="true">
        <TextView android:layout_width="fill_parent" android:layout_height="wrap_content"
                  android:id="@+id/titolo"
                  android:text="@string/titoloSinonimi"
                  android:textSize="60sp"
                  android:paddingBottom="25dp"
                  android:paddingTop="30dp"
                  android:paddingLeft="50dp"
                  android:textColor="@color/nero"/>
            <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:id="@+id/txtSinonimi"
                    android:textColor="@color/nero"
                    android:textSize="27sp"
                    android:paddingBottom="30dp"
                    android:paddingLeft="30dp"
                    android:paddingRight="30dp"
                    android:clickable="true"
                    android:layout_below="@id/titolo" />

    </RelativeLayout>
    </RelativeLayout>
</ScrollView>

а это интерактивные слова, вставленные в текстовое представление (txtsinonimi)

private void setParole(String parole)
{
    parole = parole.trim();
    Spannable spans;
    txtSinonimi.setText(parole, TextView.BufferType.SPANNABLE);
    spans = (Spannable) txtSinonimi.getText();

    String[] fields = parole.split(", ");

    for (String word: fields)
    {
        word = word.trim();
        if ( Character.isLetterOrDigit(word.charAt(0))) {
            ClickableSpan clickSpan = getClickableSpan(word);
            int index = parole.indexOf(word);
            spans.setSpan(clickSpan, index, index + word.length(),
                    Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        }
    }

    txtSinonimi.setMovementMethod(LinkMovementMethod.getInstance());
}

/* evento click sulla parole/link */
private ClickableSpan getClickableSpan(final String word) {
    return new ClickableSpan() {
        final String mWord;
        {
            mWord = word;
        }

        @Override
        public void onClick(View widget)
        {
            Intent intent = new Intent(getActivity(), SearchResult.class);
            intent.putExtra(SearchManager.QUERY, mWord);
            startActivity(intent);
        }
    };
}

как я могу использовать свое текстовое представление с интерактивным диапазоном внутри прокрутки??


person user3144125    schedule 20.03.2014    source источник
comment
сложно что это значит?   -  person pskink    schedule 21.03.2014
comment
Посмотрите на этот заголовок stackoverflow.com/questions/4061118/ , возможно, это поможет вам лучше понять вашу проблему, вы не найдете там решения...   -  person GhostDerfel    schedule 21.03.2014
comment
это сложно означает, что он работает один раз каждые 4 раза, когда я пытаюсь, и он работает правильно в нижней части текстового представления, но не в верхней части   -  person user3144125    schedule 21.03.2014
comment
попробуйте воспроизвести его с помощью TextView как единственного дочернего элемента ScrollView и посмотрите, работает ли он так же   -  person pskink    schedule 21.03.2014
comment
@pskink теперь работает правильно, но мне нужен относительный макет вокруг текстового представления.   -  person user3144125    schedule 21.03.2014
comment
поэтому попробуйте добавить материал шаг за шагом и выяснить, когда он сломается, например, почему у вас есть RelativeLayout внутри другого RL?   -  person pskink    schedule 21.03.2014
comment
я пробовал, но проблема только в прокрутке   -  person user3144125    schedule 21.03.2014
comment
тебе нужен второй РЛ?   -  person pskink    schedule 21.03.2014
comment
хм, почему это? для чего второй?   -  person pskink    schedule 21.03.2014
comment
давайте продолжим обсуждение в чате   -  person user3144125    schedule 21.03.2014