Так что я пытался найти некоторые ресурсы, которые помогут мне понять, как сделать это лучше. Я начинаю с android и хочу создать приложение, которое поможет записывать мои тренировки. Часть, в которой я застрял, это то, что я хочу нажать кнопку, чтобы добавить еще одну тренировку в список. Когда я застрял, я могу нажать кнопку и добавить виджеты в группу и ограничить ее предыдущей тренировкой. Например:
Кнопка "плюс" рядом с Тренировка A , тренировки B выпадающие, но ограничены тренировки A , и возможность полоскать и повторять столько раз, сколько необходимо.
Я больше ищу ресурсы это поможет мне понять процесс использования макетов или создания виджетов программно. Мне удалось создать указанные c виджеты программно, но не повезло с наличием ограничений в том месте, где они мне нужны, и это заставило меня задуматься, может быть, ответ - сгруппировать все виды и добавить группу программным способом.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:id="@+id/test"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#121212"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView5"
android:layout_width="10dp"
android:layout_height="21dp"
android:text="*"
android:textColor="@color/Main_Text"
app:layout_constraintStart_toEndOf="@+id/editText3"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<TextView
android:id="@+id/textView4"
android:layout_width="10dp"
android:layout_height="21dp"
android:text="*"
android:textColor="@color/Main_Text"
app:layout_constraintStart_toEndOf="@+id/editText2"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText8"
android:layout_width="40dp"
android:layout_height="39dp"
android:ems="10"
android:hint="reps"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toEndOf="@+id/textView3"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
style="@style/WhiteText"
android:id="@+id/editText3"
android:layout_width="40dp"
android:layout_height="39dp"
android:layout_marginStart="16dp"
android:ems="10"
android:hint="lbs"
android:inputType="textPersonName"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toEndOf="@+id/editText10"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText11"
android:layout_width="40dp"
android:layout_height="39dp"
android:ems="10"
android:hint="reps"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toEndOf="@+id/textView5"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText2"
android:layout_width="40dp"
android:layout_height="39dp"
android:layout_marginStart="16dp"
android:ems="10"
android:hint="lbs"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toEndOf="@+id/editText8"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText10"
android:layout_width="40dp"
android:layout_height="39dp"
android:ems="10"
android:hint="reps"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toEndOf="@+id/textView4"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText"
android:layout_width="40dp"
android:layout_height="39dp"
android:layout_marginStart="16dp"
android:ems="10"
android:hint="lbs"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<EditText
android:id="@+id/editText4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="56dp"
android:ems="10"
android:hint="Exercise name"
android:inputType="textPersonName"
android:textColor="@color/Main_Text"
android:textColorHint="#22AAAAAA"
app:layout_constraintEnd_toStartOf="@+id/addExercise"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView3"
android:layout_width="10dp"
android:layout_height="21dp"
android:text="*"
android:textColor="@color/Main_Text"
app:layout_constraintStart_toEndOf="@+id/editText"
app:layout_constraintTop_toBottomOf="@+id/editText4" />
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:hint="Workout Name"
android:textColorHint="#22AAAAAA"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageButton
android:id="@+id/addExercise"
android:layout_width="53dp"
android:layout_height="39dp"
android:background="#121212"
android:onClick="addExercise"
app:layout_constraintBottom_toBottomOf="@+id/editText4"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/editText4"
app:srcCompat="@android:drawable/ic_menu_add" />
</androidx.constraintlayout.widget.ConstraintLayout>
В верхнем разделе представлены 1 упражнение и кнопка «плюс» для добавления упражнения и его дубликата