Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将两个相同的值传递给活动_Java_Android_Android Activity - Fatal编程技术网

Java 将两个相同的值传递给活动

Java 将两个相同的值传递给活动,java,android,android-activity,Java,Android,Android Activity,我有一个活动显示了两个地质点之间的路线。需要两个地质点 这个活动看起来像 final double fromLat = location.getLatitude(); // user location final double fromLon = location.getLongitude(); final double toLat=this.getIntent().getDoubleExtra("tolat", 0.0); final double toLon=this.getIn

我有一个活动显示了两个地质点之间的路线。需要两个地质点

这个活动看起来像

 final double fromLat = location.getLatitude();  // user location
 final double fromLon = location.getLongitude();

 final double toLat=this.getIntent().getDoubleExtra("tolat", 0.0);
 final double toLon=this.getIntent().getDoubleExtra("tolng",0.0);
    Log.v(tag, "flat"+fromLat+"flon"+fromLon+"toLat"+toLat+"tolon"+toLon);
          new Thread() {
               @Override
                  public void run() {
                     String url = RoadProvider.getUrl(fromLat, fromLon, toLat, toLon);
                            InputStream is = getConnection(url);
                            mRoad = RoadProvider.getRoute(is);
                            mHandler.sendEmptyMessage(0);
                    }
            }.start();
    }
还有两个活动,第一个是加载整洁地点的列表,第二个是我们可以搜索任何城市,它还显示该城市附近地点的列表

如果用户单击这两个活动的任何列表中的某个项目,我希望显示路线。这意味着我想通过两个活动的lat和lng(地质点)

在上述代码中,toLat和toLng将保持不变,但fromLat和fromLng将根据用户单击的ListActivity的起始位置进行更改

如何传递城市搜索活动的值,以便fromLat和fromLng将根据特定活动进行更改

希望我的问题清楚


提前感谢。

您可以使用putextra的intent方法传递带有intent的值。 并使用getExtra方法获取值

// Put values with intent. 
Intent intent_name = new Intent(nearby_place.this,geopoint.class);
intent_name.putExtra("longitude", "72");
intent_name.putExtra("latitude", "22");
startActivity(intent_name);

// Put values with intent. 
Intent intent_name = new Intent(city_search.this,geopoint.class);
intent_name.putExtra("longitude", "72");
intent_name.putExtra("latitude", "22");
startActivity(intent_name);

//Get values which comes with intent
// You can get the values of longitude & latitude in geopoint class as below method
int longitude = getIntent().getExtras().getInt("longitude");
int latitude = getIntent().getExtras().getInt("latitude");

是的,我知道,但在我上面写的代码中,仅适用于用户当前位置,但如果我通过seacrhCity活动的lat和lng。然后fromLat和fromLng将如何相应地改变。我想说的是,我只能使用一个fromLat和fromLng并将其传递给函数,但我有两个。您可以使用getExtra方法在geopoint活动中获得lat和long值。当您在“当前位置”活动之后参加“地质点”活动时,您将从“当前位置”活动中获得纬度和经度;如果您在“城市搜索”活动之后参加“地质点”活动时,您将从“城市搜索”活动中获得纬度和经度