Minulla on liukusäädin, joka voidaan vetää ylös ja sitten se näyttää kartan. Voin siirtää liukusäädintä ylös ja alas piilottaakseni tai näyttääkseni kartan. Kun kartta on näkyvissä, voin käsitellä kartan kosketustapahtumia. Aina kun kosketan, käynnistyy AsyncTask
, joka lataa tietoja ja tekee Toast
-ohjelman, joka näyttää tiedot. Vaikka käynnistän tehtävän kosketustapahtuman yhteydessä, toastia ei näytetä, ennen kuin suljen liukusäätimen. Kun liukusäädin suljetaan ja kartta ei ole enää näkyvissä, Toast
tulee näkyviin.
Onko ideoita?
Käynnistä tehtävä
EDIT:
public boolean onTouchEvent(MotionEvent event, MapView mapView){
if (event.getAction() == 1) {
new TestTask(this).execute();
return true;
}else{
return false;
}
}
ja onPostExecute
-kohdassa pitää kohottaa malja.
Toast.makeText(app.getBaseContext(),(String)data.result,
Toast.LENGTH_SHORT).show();
Uudessa TestTask(this)
-kohdassa tämä on viittaus MapOverlay
:iin eikä MapActivity
:iin, joten tämä oli ongelma.
Jos haluat näyttää Toast sovelluksessasi, kokeile tätä:
Toast.makeText(getActivity(), (String)data.result,
Toast.LENGTH_LONG).show();
Toinen esimerkki:
Toast.makeText(getActivity(), "This is my Toast message!",
Toast.LENGTH_LONG).show();
Voimme määritellä kaksi vakiota kestolle:
int LENGTH_LONG Näytä näkymä tai teksti-ilmoitus pitkän ajanjakson ajan. ajan.
int LENGTH_SHORT Näytä näkymä tai teksti-ilmoitus lyhyeksi ajaksi. ajaksi.
LayoutInflater myInflater = LayoutInflater.from(this);
View view = myInflater.inflate(R.layout.your_custom_layout, null);
Toast mytoast = new Toast(this);
mytoast.setView(view);
mytoast.setDuration(Toast.LENGTH_LONG);
mytoast.show();
Paahtoleipää Androidissa
Toast.makeText(MainActivity.this, "YOUR MESSAGE", LENGTH_SHORT).show();
tai
Toast.makeText(MainActivity.this, "YOUR MESSAGE", LENGTH_LONG).show();
( LENGTH_SHORT ja LENGTH_LONG toimivat boolean-lippuina - mikä tarkoittaa, että et voi lähettää toast-ajastinta millisekunneiksi, vaan sinun on käytettävä jompaakumpaa näistä kahdesta vaihtoehdosta )
Voit mukauttaa tost:
LayoutInflater mInflater=LayoutInflater.from(this);
View view=mInflater.inflate(R.layout.your_layout_file,null);
Toast toast=new Toast(this);
toast.setView(view);
toast.setDuration(Toast.LENGTH_LONG);
toast.show();
Tai Yleinen tapa:
Toast.makeText(context,"Your message.", Toast.LENGTH_LONG).show();