Задать вопрос
@shesa
новичок

Как правильно вставить ListView в Fragment?

Добрый день. Помогите разобраться. Необходимо что бы во фрагменте были кнопки и текст (цветной с отступами), а сам фрагмент мог бы смещаться (Scroll). Сейчас в ScrollView помещен только текст (цветной с отступами), а когда добавляю туда кнопки - пишет ошибку. Читал что нужно использовать ListView вместо ScrollView, но тогда в классе я не знаю как правильно написать код. Или подскажите пожалуйста, где почитать?
5cff9f1698a29243707455.jpeg
java класс
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.support.annotation.Nullable;
import android.widget.TextView;

public class Kafuzma1 extends Fragment {

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_kafuzma1, container, false);

        TextView Molitvi = (TextView) rootView.findViewById(R.id.Molitvi);
        String text = "<font COLOR='RED'>\t\t\t\t\tПро те, яким чином слід співати Псалтир, дотримуючись розумної послідовності.</font> +
                "\t\tБлагословен Бог наш завжди, нині, і повсякчас, і на віки віків.<br />\t\t\t\t\tЯкщо мирянин, то промовляє зворушено:<br />" +
                "Молитвами святих отців наших, Господи Ісусе Христе Боже наш, помилуй нас. Амінь.<br />" +
    ..................................
                " ";
        Molitvi.setText(Html.fromHtml(text));
        return rootView;
    }
    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        getActivity().setTitle("Кафизма 1");
    }
}

часть кода фрагмента
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:padding="5sp"
    tools:context=".Kafuzma1">
..........
     <com.google.android.flexbox.FlexboxLayout
        android:id="@+id/Box"
        app:alignItems="center"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_below="@+id/butKf_2"
        android:layout_marginTop="10dp"
        app:flexWrap="wrap">
.......................
        <Button
            android:id="@+id/button7"
            style="@style/btn_Psalmu"
            android:text="7"
            android:textSize="16dp" />
        <Button
            android:id="@+id/button8"
            style="@style/btn_Psalmu"
            android:text="8"
            android:textSize="16dp" />
    </com.google.android.flexbox.FlexboxLayout>

    <ScrollView
        android:id="@+id/kafizma1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/Box">
        <TextView
            android:id="@+id/Molitvi"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textSize="18sp" />
    </ScrollView>
</RelativeLayout>
  • Вопрос задан
  • 192 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
AlexanderYudakov
@AlexanderYudakov
C#, 1С, Android, TypeScript
ScrollView может содержать только один вложенный элемент.

Если надо больше — берем LinearLayout и в него уже вставляем несколько элементов.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы