Как изменить значение, объявленное в XML-файле в Android во время выполнения - PullRequest
1 голос
/ 22 декабря 2011

Я хочу получить и установить значение элементов управления, определенных в файле XML Layout во время выполнения, и сохранить это значение в другом файле XML.
я хочу изменить состояние экранных объектов, в том числе объявленных в XML, во время выполнения.
Спасибо и всего наилучшего
RizN81

1 Ответ

1 голос
/ 22 декабря 2011

Самое простое, что нужно сделать - это определить значения, которые вы хотите захватить, отдельно от файлов макета.Затем вы можете получить значения напрямую.Например:

некоторый файл макета

<Button
    android:paddingLeft="@dimen/left_padding"
    android:checked="@bool/default_checked"
    . . .
    />

некоторый файл в res / values ​​

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <dimen name="left_padding">3dp</dimen>
    <bool name="default_checked">true</bool>
    . . .
</resources>

В коде представления

Resources res = getResources();
int leftPadding = res.getDimension(R.dimen.left_padding);
boolean defaultChecked = res.getBoolean(R.bool.default_checked);

Затем вы можете сохранить leftPadding и defaultChecked в файле XML (но не в файле ресурсов!), В общих настройках и т. Д. Но я так думаюбыло бы проще просто получить значение ресурса напрямую каждый раз, когда вам это нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...