2011-03-17 8 views
2

Bonjour J'ai un problème avec mon application. Lorsque je crée un nouveau projet pour Android 2.2 ou moins, mon application fonctionne correctement et mon toast s'affiche à l'écran, mais lorsque je crée un nouveau projet pour 2.3 ou 2.3.3 avec le même code, le toast n'apparaît pas du tout. J'ai également ajouté la mise à jour de Textview avec dans le thread OnCreate principal mais toujours le textview de moi ne met pas à jour. J'ai besoin de résoudre le problème des toasts principalement. grâceToast Widget sur Android 2.3.3

public class Location extends Activity { 
/** Called when the activity is first created. */ 
static String Text; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


    LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
    final TextView tv = (TextView)findViewById(R.id.textView1); 

    lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, new LocationListener() { 



    private final String TAG = null; 

    @Override 
    public void onLocationChanged(android.location.Location location) { 
     // TODO Auto-generated method stub 

     Text = "My current location is: " + "Latitud = " + location.getLatitude() + "Longitud = " + location.getLongitude(); 
     Context context = getApplicationContext(); 
     int duration = Toast.LENGTH_SHORT; 
     Toast.makeText(context, Text, duration).show(); 
      tv.setText(Text); 
     try 
     { 
      File root = Environment.getExternalStorageDirectory(); 
      File gps = new File(root, "log.txt"); 




     BufferedWriter out = new BufferedWriter(
       new FileWriter(gps,true)) ; 

     out.write(Text); 
     out.write(""); 
     out.close(); 

     } 


     catch (IOException e) { 


      Log.e(TAG, "Could not write file " + e.getMessage()); 

     } 
    } 
+0

J'ai édité le code pour inclure .show pour toast mais pas de différence. – Nekro

Répondre

3

Vous devez appeler show() sur le pain grillé.

Toast.makeText(context, Text, duration).show(); 

Tout ce que vous faites, c'est créer le Toast et ne pas le montrer.

La mise à jour TextView peut échouer en raison d'une exception.

+0

oh mon dieu ha ha j'ai ajouté .show (doit de supprimer quand copier et coller) mais quand même il n'apparaît pas. quel type d'exception peut entraîner la mise à jour du texte? – Nekro

+0

Vous mettez à jour TextView dans un bloc try où vous essayez également d'écrire un fichier. –

+0

J'ai déplacé la mise à jour de TextView après le bloc Exception d'E/S et elle ne se met toujours pas à jour et mon toast ne s'affiche toujours pas. Cela me rend fou comme le toast fonctionne bien sur 2.2 ou moins. – Nekro