Android TextView update
Hi I am trying to update a textview to notify the user when the GPS coordinates have been logged. My problem is that I need to access the location infomation from another class and I cannot directly edit the textview from anything apart from the onCreate class.
here is my code:
public class Location extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
        LocationListener mlocListener = new MyLocationListener(); 
        mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener); 
        } 
        public class MyLocationListener implements LocationListener 
        { 
        private final String TAG = null;
        @Override
        public void onLocationChanged(android.location.Location location) {
            // TODO Auto-generated method stub
              location.getLatitude(); 
                location.getLongitude(); 
                String Text = "My current location is: " + "Latitud = " + location.getLatitude() + "Longitud = " + location.getLongitude();
                try
                {
                    File root = Environment.getExternalStorageDirectory();
                    File gps = new File(root, "log.txt");
                BufferedWriter out = new BufferedWriter(
                        new FileWriter(gps,true)) ;
                TextView tv = (TextView)findViewById(R.id.textView1);
                tv.setText(Text);
                out.write(Text);
                out.write(""开发者_开发百科);
                out.close();
                }
                catch (IOException e) {
                    Log.e(TAG, "Could not write file " + e.getMessage());
                }
        }
Thanks
i have a similar problem with a textview, i'm using a gps class, and i have on the screen more textview like a position of interest that this textview move on the screen;
i remove all textview and after add again textview, so i can update a position of textview; but i can't execute a onclick method because the textview are add and remove continuously
Store the location information in a model object or a singleton, then access that information from the other class?
Set Handler in activity class, and pass it to handler, when handler is called, send a message to the Handler with your String. (The handler will update the GUI). http://developer.android.com/reference/android/os/Handler.html.
Edit: BTW you can change the GUI from outside the class, but you have to be on the same Thread.
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论