Дополнения Intent возвращают ноль в моем приложении
Я хочу проанализировать информацию о местоположении из карт в моем классе Карт в другой Activity
а также setText()
за EditText
но мои намерения дополнительные доходы null
, Сначала я нажимаю кнопку во втором классе, а затем перехожу к картам на карте. Наконец, я хочу проанализировать местоположение с карт на второй вид деятельности.
Класс карт:
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LatLng location= mMarker.getPosition();
double longitude= location.longitude;
double latitude=location.latitude;
List<Address> addressList = new ArrayList<>();
try{
addressList = geocoder.getFromLocation(latitude , longitude , 1);
String adresse = addressList.get(0).getAddressLine(0);
String country = addressList.get(0).getCountryName();
String fulladr = adresse +" , "+country;
Toast.makeText(MapsActivity.this, fulladr, Toast.LENGTH_SHORT).show();
Intent i = new Intent(MapsActivity.this,Partierendezvous.class);
i.putExtra("result",fulladr.toString().trim());
setResult(Partierendezvous.RESULT_OK,i);
finish();
И второй класс:
Bundle extras = getIntent().getExtras();
if(extras != null) {
String value = extras.getString("result");
edlieurend.setText(value);
} else {
Toast.makeText(getApplicationContext() , "Lieu not found " , Toast.LENGTH_SHORT).show();
}
1 ответ
Ваш вопрос может выиграть от некоторых деталей. Если вы хотите доставить результаты действия "Карты" во второе действие, вам необходимо использовать startActivityForResult
начать работу с картами.
Второе занятие
private static final int PICK_LOCATION_REQUEST = 1;
private void pickLocation() {
.
.
startActivityForResult(mapsIntent, PICK_LOCATION_REQUEST);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// Check which request we're responding to
if (requestCode == PICK_LOCATION_REQUEST) {
// Make sure the request was successful
if (resultCode == RESULT_OK) {
// The user picked a location.
// The Intent's data should contain the location you set before finishing the Maps Activity
String value = data.getString("result");
edlieurend.setText(value);
} else {
Toast.makeText(getApplicationContext() , "Lieu not found " , Toast.LENGTH_SHORT).show();
}
}
}