0

进入android只有几个星期,我有点难过。任何和所有的见解都非常感谢。

在我发现的这段代码中,作者对 setOrderName 和 Status 的值进行了硬编码。

不过,我将从 Web 服务中提取这些值,在这里看起来我需要 o1,o2,o3 对象根据我提取的记录数量增加。它是否正确?如果是这样,我将如何实现这一目标。

如果我喋喋不休,请随时询问细节。提前致谢

 private void getOrders(){
      try{
          m_orders = new ArrayList<Order>();
          Order o1 = new Order();
          o1.setOrderName("SF services");
          o1.setOrderStatus("Pending");
          Order o2 = new Order();
          o2.setOrderName("SF Advertisement");
          o2.setOrderStatus("Completed");
          m_orders.add(o1);
          m_orders.add(o2);
          Thread.sleep(5000);
          Log.i("ARRAY", ""+ m_orders.size());
        } catch (Exception e) {
          Log.e("BACKGROUND_PROC", e.getMessage());
        }
        runOnUiThread(returnRes);
    }

public class Order {


private String orderName;
private String orderStatus;

public String getOrderName() {
    return orderName;
}
public void setOrderName(String orderName) {
    this.orderName = orderName;
}
public String getOrderStatus() {
    return orderStatus;
}
public void setOrderStatus(String orderStatus) {
    this.orderStatus = orderStatus;
}

}

4

1 回答 1

0

Order不需要多个变量。代替:

      m_orders = new ArrayList<Order>();
      Order o1 = new Order();
      o1.setOrderName("SF services");
      o1.setOrderStatus("Pending");
      Order o2 = new Order();
      o2.setOrderName("SF Advertisement");
      o2.setOrderStatus("Completed");
      m_orders.add(o1);
      m_orders.add(o2);

你可以写:

      m_orders = new ArrayList<Order>();
      Order o;

      o = new Order();
      o.setOrderName("SF services");
      o.setOrderStatus("Pending");
      m_orders.add(o);

      o = new Order();
      o.setOrderName("SF Advertisement");
      o.setOrderStatus("Completed");
      m_orders.add(o);

请注意,创建和添加订单的 4 行使用相同的局部变量o.

于 2012-06-06T20:08:56.073 回答