Я хотел бы знать, как реализовать макет, который имеет статические метки и динамические данные под ними на моем телефоне Android - PullRequest
0 голосов
/ 11 марта 2011

Я сейчас работаю над приложением, которое принимает данные из inputtream и отображает их, но мне хотелось бы знать, в частности, в XML, как и где я могу научиться создавать отображение для пользователя, отображающее статические метки с данными, поступающими из потока под ними, постоянно обновляется. Я считаю, что я хочу использовать относительный макет. Жирные буквы - это статические метки, а курсив - динамические значения, которые я получаю из потока. Пожалуйста помоги. Спасибо.

Пример: Температура Вольт Тахометр

           *20*    *12*   *4000*

1 Ответ

0 голосов
/ 11 марта 2011

простите меня, если мой ответ не тот, на который вы надеялись, потому что я не могу придумать способ сделать это исключительно в 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 или о методах динамического обновления элементов пользовательского интерфейса. Если вы уточните это, возможно, я (и все остальные) смогу помочь вам больше.

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