@TurinoDsgnr

Android Studio как реализовать якорные ссылки в элементе LinearLayout?

У меня есть страница, она состоит из нескольких TextView внутри тэга LinearLayout. Как сделать ссылку при нажатии на которую экран скроллится до определённого TextView. Например, первая ссылка скроллит экран до @string/faq01, вторая до @string/faq02 и т.д.

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:padding="10sp"
        >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20sp"
            android:text="@string/links"
            android:textSize="18sp"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20sp"
            android:text="@string/faq01"
            android:textSize="18sp"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20sp"
            android:text="@string/faq02"
            android:textSize="18sp"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20sp"
            android:text="@string/faq02"
            android:textSize="18sp"/>

    </LinearLayout>
  • Вопрос задан
  • 28 просмотров
Пригласить эксперта
Ответы на вопрос 1
@WaterSmith
Android-разработчик. Java, Kotlin
Вешать на TextVew onClickListener, который будет скроллить в нужное место.
В рамках xml, без кода, вы эту задачу не решите.

Если хотите сделать красиво, можете сделать свой кастомный View (какой-нибудь LinkedTextView) унаследованный от TextView. В нем вы сможете хранить ссылку на другой View на который переходить, и определить дефолтное поведение при клике.
Тогда такому View можно будет назначать ссылку через атрибут в xml. Такой подход очень хорош для переиспользования, но в целом реализация будет сложнее, чем просто повесить листнер.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Drum Pads 24 Ульяновск
от 90 000 до 160 000 ₽
FYM.TEAM Новосибирск
от 100 000 до 120 000 ₽
Mountain Ridge Москва
от 150 000 до 200 000 ₽