如何将双纬和双经度设置为数组
您好请看下面我的代码。如何将双纬和双经度设置为数组
public void onClick(View arg0) { // create class object
gps = new GPSTracker(MainActivity.this);
// check if GPS enabled
if(gps.canGetLocation()){
double latitude = gps.getLatitude();
double longitude = gps.getLongitude();
String mydate = java.text.DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
// \n is for new line
Toast.makeText(getApplicationContext(), "Time : " +mydate + " Your Location is - \nLat: "
+ latitude + "\nLong: " + longitude, Toast.LENGTH_LONG).show();
}
在GPSTracker类:
public double getLatitude(){ if(location != null){
latitude = location.getLatitude();
}
// return latitude
return latitude;
}
/**
* Function to get longitude
* */
public double getLongitude(){
if(location != null){
longitude = location.getLongitude();
}
// return longitude
return longitude;
}
我想经度和纬度保存到阵列。
与点击btnShowLocation按钮时一样,纬度将设置为n1x,其经度为n1y。
然后,第二次单击该按钮时,纬度将设置为n2x,其经度为n2y。
回答:
您可以创建一个名为一个内部类的LatLong或使用simplelatlng
public class LatLong { double lat;
double long;
public LatLong(double lat, double long) {
this.lat = lat;
this.long = long;
}
public double getLat(){
return this.lat;
}
public double getLong(){
return this.long;
}
}
然后,你可以将它添加到MainActivity
final List<LatLong> latLongList = new ArrayList<LatLong>(); public void onClick(View arg0) {
//...
double latitude = gps.getLatitude();
double longitude = gps.getLongitude();
latLongList.add(new LatLong(latitude, longitude));
//...
}
回答:
如果你想保存坐标之一单位在同一时间(一个单位是经度和纬度的组合),创建一个持有坐标的类:
public class Coordinates {
public double Latitude;
public double Longitude;
}
在您的活动创建类型的ArrayList或List保持体坐标:
private ArrayList<Coordinates> coordinates = new ArrayList<Coordinates>();
添加上的每个按钮点击类型的新元素的坐标您的ArrayList:
var cc = new Coordinates(); cc.Latitude = lat;
cc.Longitude = lon;
this.coordinates.add(cc);
后来在在某些地方,您需要的坐标只需使用get或remove来获取并使用坐标:
Coordinates cc = (Coordinates)this.coordinates.get(position); // cc.Latitude ...
这样你就有一个灵活的数组。
以上是 如何将双纬和双经度设置为数组 的全部内容, 来源链接: utcz.com/qa/267391.html