простите меня, если мой ответ не тот, на который вы надеялись, потому что я не могу придумать способ сделать это исключительно в XML. Но пока не получится лучший ответ, вот как я делаю похожую вещь:
В операции, которая будет отображать результаты, пусть будет объект Handler и частные классы Runnable, каждый из которых обновляет элемент пользовательского интерфейса.
/** Handler for callbacks to the UI thread */
final Handler mHandler = new Handler();
/** Runnable class to be posted in handler */
private class SetTemperatureText implements Runnable {
private final int newTemp;
public SetTemperatureText(int newTemp) {
this.newTemp = newTemp;
}
public void run() {
mTemperatureTextView.setText(newTemp + " degrees C");
}
}
Вы можете иметь один из них для каждого динамически изменяемого поля.
В другом месте той же деятельности вы создаете новую ветку для обработки входящего ввода. Всякий раз, когда он получает новое значение для одного из полей, он должен создать новый объект SetWhwhatField с новым значением и отправить его в обработчик. Вскоре появится поток пользовательского интерфейса и обновит пользовательский интерфейс новым значением.
Что касается самого макета, RelativeLayout не звучит как плохая идея. TableLayout тоже может хорошо работать:
http://developer.android.com/resources/tutorials/views/hello-tablelayout.html
Мне было трудно сказать, нужна ли вам дополнительная информация о структуре xml / layout или о методах динамического обновления элементов пользовательского интерфейса. Если вы уточните это, возможно, я (и все остальные) смогу помочь вам больше.