0

how can i pass latLongString to elhActivity and show it on the screen....both java files are under same package com.elh.whereami;

this is the whereami.java code

package com.elh.whereami;
    import android.app.Activity;
    import android.content.Context;
    import android.location.Criteria;
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.os.Bundle;
    import android.widget.TextView;

    public class whereami extends Activity {

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);

            LocationManager locationManager;
            String context = Context.LOCATION_SERVICE;
            locationManager = (LocationManager) getSystemService(context);

            Criteria criteria = new Criteria();
            criteria.setAccuracy(Criteria.ACCURACY_FINE);
            criteria.setAltitudeRequired(false);
            criteria.setBearingRequired(false);
            criteria.setCostAllowed(true);
            criteria.setPowerRequirement(Criteria.POWER_LOW);
            String provider = locationManager.getBestProvider(criteria, true);

            Location location = locationManager.getLastKnownLocation(provider);
            updateWithNewLocation(location);

            locationManager.requestLocationUpdates(provider, 2000, 10, locationListener);
        }

        private final LocationListener locationListener = new LocationListener() {
            public void onLocationChanged(Location location) {
                updateWithNewLocation(location);
            }

            public void onProviderDisabled(String provider) {
                updateWithNewLocation(null);
            }

            public void onProviderEnabled(String provider) {
            }

            public void onStatusChanged(String provider, int status, Bundle extras) {
            }
        };

        public void updateWithNewLocation(Location location) {
            String latLongString;
            if (location != null) {
                double lat = location.getLatitude();
                double lng = location.getLongitude();
                latLongString = "Lat:" + lat + "\nLong:" + lng;
  }
 }
}

and this is the elhActivity.java file

package com.elh.whereami;
import android.app.Activity;
import android.widget.TextView;

public class elhActivity extends Activity {
    /** Called when the activity is first created. */
   public String Locationinfo = whereami.latLongString;

   @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TextView tv = new TextView(this);
        tv.setText(Locationinfo);
        setContentView(tv);
 }
}
Moe
  • 1,547
  • 3
  • 18
  • 21

3 Answers3

2

First, you have to start elhActivity from the first class:

Intent intent = new Intent(this, elhActivity.class);
intent.putExtra("the_latLongString", latLongString);
startActivity(intent);

Then, inside elhActivity you can do something like this in the onCreate method:

String latLon = getIntent().getStringExtra("the_latLongString");
TextView tv = new TextView(this);
tv.setText(latLon);
setContentView(tv);
Cristian
  • 198,401
  • 62
  • 356
  • 264
0

Intent myintent=new Intent(Info.this, elhActivity.class).putExtra("latlon", value); startActivity(myintent);

To get the data
String s= getIntent().getStringExtra("latlong");

Bundle class might be of interest too

abRao
  • 2,787
  • 1
  • 25
  • 37
0

By using the putExtra and getExtars methods, you can pass data between two activities. See this post for an example.

Community
  • 1
  • 1
Mudassir
  • 13,031
  • 8
  • 59
  • 87