- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个 GeoPoint 类型的 ArrayList。
private List<GeoPoint> points = new ArrayList<GeoPoint>();
我想将 points
传递给另一个 Activity 并检索该 Activity 中的数据。我该怎么做?我知道我必须使用 parcelable
但我搜索过,但找不到传递 ArrayLists 的方法。
最佳答案
此功能将帮助您:http://developer.android.com/reference/android/content/Intent.html#putParcelableArrayListExtra(java.lang.String , java.util.ArrayList )
但问题是,GeoPoint 不是 Parcelable。那么,您可以在这里做一个解决方法:
1) 创建一个实现 Parcelable 的类:
public class ParcelableGeoPoint implements Parcelable { private GeoPoint geoPoint; public ParcelableGeoPoint(GeoPoint point) { geoPoint = point; } public GeoPoint getGeoPoint() { return geoPoint; } public int describeContents() { return 0; } public void writeToParcel(Parcel out, int flags) { out.writeInt(geoPoint.getLatitudeE6()); out.writeInt(geoPoint.getLongitudeE6()); } public static final Parcelable.Creator<ParcelableGeoPoint> CREATOR = new Parcelable.Creator<ParcelableGeoPoint>() { public ParcelableGeoPoint createFromParcel(Parcel in) { return new ParcelableGeoPoint(in); } public ParcelableGeoPoint[] newArray(int size) { return new ParcelableGeoPoint[size]; } }; private ParcelableGeoPoint(Parcel in) { int lat = in.readInt(); int lon = in.readInt(); geoPoint = new GeoPoint(lat, lon); } }
2) 发送到其他 Activity 时(点是您的 List
ArrayList<ParcelableGeoPoint> pointsExtra = new ArrayList<ParcelableGeoPoint>();foreach(GeoPoint point: points) { pointsExtra.add(new ParcelableGeoPoint(point));}intent.putExtra("geopoints", pointsExtra);
3) 在调用的 Activity 中:
ArrayList<ParcelableGeoPoint> pointsExtra = getIntent().getParcelableArrayListExtra("geopoints");ArrayList<GeoPoint> points = new ArrayList<GeoPoint>();foreach(ParcelableGeoPoint point: pointsExtra) { points.add(point.getGeoPoint());}
代码应该可以工作,但未经测试。
关于Android:将 List<GeoPoint> 传递给另一个 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4141944/
有点奇怪的问题。 我正在将数据从一项 Activity 传递到另一项 Activity - 特别是两个 GeoPoints。但是,正如我发现的那样,您不能传递 GeoPoint 类型的 ArrayLi
有没有办法获取汽车从一个点到另一个点的到达时间? 最佳答案 有一个 Google 网络服务。 http://code.google.com/apis/maps/documentation/distan
下面的代码有什么问题。它在此行抛出空指针异常(location.setLatitude(latitude);)。我试图在应用程序启动后立即画一个圆圈,这就是我从 onCreate 方法传递位置对象的原
我想搜索给定的 GeoPoint 是否在 Android 中用户当前位置提供的给定半径内。 javascript 中是否有类似 containsLatLang() 方法的方法? 最佳答案 尝试 thi
不确定发生了什么,但是当我尝试调用 GeoPoint 以获取设备当前的经度和纬度时,我收到通知“无法解析符号‘GeoPoint’。不太确定出了什么问题 private void getLastKnow
你好我有下一个奇怪的问题:我从 sql server 中恢复坐标为 double,将其转换为 float,然后转换为 intE6。我设置了两个打印件,一个在转换为 GeoPoint 之前,另一个在转换
我正在研究 osmdroid,并尝试做一些非常简单的事情,我以前在另一个 map 框架上做过,但我找不到如何在 OSMdroid 上做。我想在 map 上某处的 GeoPoint 上放置一个标记。到此
全部 - 我正在尝试获取用户的当前位置,而不是使用叠加项在 map 上显示该位置。我的问题是用户的位置作为一个位置进来,覆盖数组只接受 GeoPoints。这是我尝试过的: LocationListe
我在看似相当基本的用例时遇到了麻烦,但是我遇到了Kibana中的某些限制以及某些地理数据类型的问题。感觉就像是我走错了路。 我有一个相对较大的geo_point类型的点数据集(位置),并内置了 map
我正在尝试在Kibana中的任何 map 上查看我的geojson。 我的原始数据是具有坐标数组的地理多边形。 根据我的理解,ElasticSearch / Kibana无法可视化地理形状,因此我试图
我正在尝试将 Google map 中的一些地理位置数据放入数据库中。但是传递 GeoPoint 对象时,我似乎失去了大量的精度。 我得到一个 Intent 作为 onActivityResult 响
如何在 Firestore 数据库中搜索定义的距离半径内的位置纬度和经度。 示例数据库: COMPANIES - COMPANY 1 --Lat: 12345 --Long: 6789 - COMPA
我正在尝试将 GeoPoint 对象从其纬度和经度值反转为实际的字符串地址。 到目前为止,我将 GeoPoint 对象传递给一个方法,提取纬度和经度值,将地址存储在数组中,第一个地址设置为“add”字
我正在尝试存储使用该应用程序的用户的位置,但 Parse 不允许我在一个表中包含两列 GeoPoint 类型,即 user。我为每个用户存储 2 个地址。 目前,我创建了 4 列(address1Lo
在我的应用程序中,我试图计算一个人步行的距离。为此,我创建了一个 LocationHelper 类,它应该每 30 秒或 10 米获取一次当前 GeoPoint。我已经有一个方法可以返回我知道有效的两
我有不确定数量的 GeoPoint,我想将它们全部显示在谷歌地图上。我不知道该怎么做。 谢谢! 最佳答案 private void fitPoints(List points) { /
我有用户的位置(类位置)。和 GeoPoints 列表。有计算距离的功能吗?还是写自己的函数是唯一的解决办法? 最佳答案 我认为最简单的方法是在 Android Location 类中使用 dista
我在某些与笛卡尔坐标对应的搜索文档中有字段 x 和 y,我想执行径向搜索,如: query = '(x * x) + (y * y) < 100' 这相当于“找到距离 (0,0) 不到 10m 的所有
我一直在从 svn 创建我自己的 osmdroid apk,我已经结帐了。使用此方法:mappingdev.wordpress.com/2011/08/24/166/我已经能够从 Osmdroid 创
我想将 GeoPoint 转换为屏幕点,以便识别触摸事件上方的所有对象。所以,我试过这个: Projection projection = this.mapView.getProjection();
我是一名优秀的程序员,十分优秀!