Есть ли способ отключить все элементы в определенном макете программно?
У меня есть игра, в которую я недавно добавил глобальную функцию рекордов, которая расстроила многих людей, поэтому я хочу добавить опцию ее отключения. То, что я сделал, было так: в моем окне просмотра настроек я добавил следующее:
<!-- High Score Tracking -->
<LinearLayout android:layout_weight="40"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:orientation="vertical" android:padding="5dip">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content">
<CheckBox android:text="@string/EnableHighscoreCBText"
android:id="@+id/EnableHighscoreCB" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</CheckBox>
</LinearLayout>
<!-- High score specific settings -->
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="horizontal"
android:weightSum="100" android:padding="5dip">
<CheckBox android:text="@string/EnableShareScoresCBText"
android:id="@+id/EnableShareScoresCB" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</CheckBox>
<TextView android:id="@+id/DefaultPlayerNameTv"
android:layout_width="wrap_content" android:layout_weight="30"
android:layout_height="wrap_content" android:text="@string/pDefName"
android:textSize="18sp">
</TextView>
<EditText android:id="@+id/PlayerNameEt"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/pNameDefVal" android:layout_weight="70"
android:textSize="18sp" android:maxLength="20">
</EditText>
</LinearLayout>
</LinearLayout>
Что я хочу сделать, так это отключить весь макет «Настройки, относящиеся к высокой оценке», когда пользователь снимает флажок «Включить отслеживание высокой оценки». Я попытался отключить его, установивsetEnabled
ложно, но это не сработало вообще. Должен ли я использовать viewgroup или что-то? Есть ли метод обновления, который я должен запустить, чтобы применить изменения?