#android
Вопрос:
Я использую ящик в своем приложении, и этот ящик находится внутри drawer_layout. Я позвонил в тот ящик на своем activity_main.xml как
<RelativeLayout
android:layout_width="300dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@color/munevo_orange">
<include layout="@layout/fragment_drawer" />
</RelativeLayout>
Поскольку я использую привязку данных, в моем MainActivity.java Я использовал такую привязку данных.
private ActivityMainBinding binding;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = ActivityMainBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
Проблема в том, что мне также нужно привязать ящик, однако он находится в другом xml-файле, и я не могу до него дотянуться. Могу ли я вызвать 2 привязки данных или есть более простой способ сделать это?
ps: Мой xml-файл достаточно большой, поэтому я хотел разделить ящик на другой xml-файл.
Комментарии:
1.Я думаю, что вы используете 2
data binding
, которые вы должны использоватьdata binding
в своемinclude
tag
2. Спасибо за ваш ответ, это правильный путь. @миладсалими
Ответ №1:
<RelativeLayout
android:layout_width="300dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@color/munevo_orange">
<include layout="@layout/fragment_drawer"
android:id="@ id/fragment_drawer"/>
</RelativeLayout>
Решил проблему. Использование в основной деятельности является :
binding.fragment_drawer.buttonX.setText()
кредиты : @miladsalimi