【问题标题】:Best way to get a location in an android list view在 android 列表视图中获取位置的最佳方法
【发布时间】:2011-10-19 15:15:04
【问题描述】:

由于位置(网络或 GPS)需要一段时间才能接收,如何在列表视图中使用位置数据。如果在创建时填充了列表视图,则通常该位置尚未找到并且将为空。

构建这种类型的视图以呈现列表视图并随后使用位置数据填充行的最佳方式是什么?

如果是或不是,最好的方法是什么?您将如何通过代码示例实现这一点?

【问题讨论】:

    标签: android android-listview android-location


    【解决方案1】:

    您可以使用其数据列表设置 ListView,并在数据更改时通知它。这是一个例子。

    ArrayList<String> myData = new ArrayList<String>();
    ListView myListView = null;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       ...
    
       myListView = (ListView)findViewById(R.id.mylistview);
       myListView.setAdapter(new ArrayAdapter<String>(this, R.id.textlayout, myData));
    }
    

    我所做的是获取列表视图并使用空数组列表设置适配器。现在,每当我想更新列表视图数据时,我都会执行以下操作。

    myData.add("My new location");
    myListView.getAdapter().notifyDataSetChanged();
    

    列表视图将被更新。另一种方法是将数据直接添加到适配器而不是传入的列表。

    myArrayAdapter.setNotifyOnChange(true);
    myArrayAdapter.add("My new location");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-28
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      相关资源
      最近更新 更多