【问题标题】:getting data from the server, and updating views in onPostExecute [duplicate]从服务器获取数据,并更新 onPostExecute 中的视图 [重复]
【发布时间】:2016-03-26 17:14:25
【问题描述】:

我正在做一个可以从云服务器获取数据的项目,我正在使用 ubidots 作为我的云服务器。现在我正在尝试设置从服务器获得的值以显示在 textView 上,但我无法设置它。我需要找到一种方法,只要数据变量发生变化,就必须更改 textView。我不知道在 onPostExecute 上做什么。

public class ApiUbidots extends AsyncTask<Integer, Void, Value[]> {
        private final String API_KEY = "86b3ab3XXXXXXXXXXXXXX";
        private final String VARIABLE_ID = "5660XXXXXXXXXXXXX";

        @Override
        protected Value[] doInBackground(Integer... params) {
            ApiClient apiClient = new ApiClient(API_KEY);
            Variable gasDetector = apiClient.getVariable(VARIABLE_ID);
            Value[] variableValues = gasDetector.getValues();

        return variableValues;
    }
@Override
    protected void onPostExecute(Value[] variableValues) {
        // Update your views here

     }
}

【问题讨论】:

标签: java android android-asynctask server


【解决方案1】:

如果你想显示从 ubidots 到 textview 的最后一个值。您可以尝试将 Textview 设置为 mgasDetector

@Override
    protected void onPostExecute(Value[] variableValues) {
        // Update your views here
String gas = Double.toString(variableValues[0].getValue());
            mgasDetector.setText(gas);

     }

或许能帮到你

【讨论】:

  • 这假设视图可以从 AsyncTask 中访问
  • @cricket_007 是的。也许你有其他解决方案
  • 上面标记为重复。此外,这个问题已经快一年了
  • 另外,请don't post identical answers to multiple questions。发布一个好的答案,然后投票/标记以关闭其他问题作为重复问题。如果问题不是重复的,调整您对该问题的回答
  • 对不起,我没有注意到重复。最近我有同样的问题。 @cricket_007 你会帮我stackoverflow.com/questions/39867841/…
猜你喜欢
  • 1970-01-01
  • 2016-10-21
  • 2019-10-15
  • 2019-01-26
  • 1970-01-01
  • 2010-11-20
  • 1970-01-01
  • 1970-01-01
  • 2014-07-21
相关资源
最近更新 更多