Как добавить LinearLayout в binding через кнопки?

Для добавления LinearLayout в Binding через кнопки в Android, вам нужно выполнить несколько шагов.

1. Создайте новый проект Android и настройте его для использования Binding. Для этого необходимо добавить в файл build.gradle следующие строки:

android {
    ...
    viewBinding {
        enabled = true
    }
}

2. Создайте макет, в котором вы будете добавлять LinearLayout. Добавьте следующий код в файл activity_main.xml:

<layout xmlns:android="http://schemas.android.com/apk/res/android">
    <data>
        ...
    </data>
    <LinearLayout
        android:id="@+id/parentLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <!-- Здесь вы можете разместить другие визуальные элементы, если это необходимо -->
    </LinearLayout>
</layout>

3. Создайте класс активности и настройте Binding. Добавьте следующий код в вашу активность (например, MainActivity.java):

public class MainActivity extends AppCompatActivity {
    private ActivityMainBinding binding;
    private LinearLayout parentLayout;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityMainBinding.inflate(getLayoutInflater());
        setContentView(binding.getRoot());

        parentLayout = binding.parentLayout;

        Button addButton = findViewById(R.id.addButton);
        addButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                addLinearLayout();
            }
        });
    }

    private void addLinearLayout() {
        LinearLayout newLinearLayout = new LinearLayout(this);
        newLinearLayout.setLayoutParams(new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT,
                LinearLayout.LayoutParams.WRAP_CONTENT));
        newLinearLayout.setOrientation(LinearLayout.VERTICAL);

        // Здесь вы можете настроить ваши новые LinearLayout, добавить в них другие визуальные элементы и т. д.

        parentLayout.addView(newLinearLayout);
    }
}

4. Создайте кнопку в вашем макете, чтобы иметь возможность добавлять LinearLayout при нажатии на нее. Добавьте следующий код в ваш файл activity_main.xml:

<Button
    android:id="@+id/addButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Add LinearLayout" />

Теперь при нажатии на кнопку "Add LinearLayout" будет вызываться метод addLinearLayout, который создает новый LinearLayout и добавляет его в родительский LinearLayout, заданный в Binding. Вы можете настроить создаваемые LinearLayout и добавить в них другие визуальные элементы, если это необходимо.

Обратите внимание, что в примере используется ViewBinding, которая является частью Android Jetpack и доступна начиная с версии 3.6 Gradle Plugin. Если вы используете старую версию Gradle Plugin, то вам следует использовать DataBinding вместо ViewBinding.