привет, я изучаю Android Spinner..in Мой учебник У меня есть две страны и город прядильщика, основанные на выборе страны. Город изменит свою работу, но когда я смогу пройти Выбранная страна и город к новой деятельности я получил ошибки Пожалуйста, помогите мнеКак передать выбранные предметы в новую активность
ответ
Вы должны использовать пакет для отправки нескольких данных на другой вид деятельности, а intent.putExtra()
Ex: -
// In your First Activity
public void send() {
Intent intent= new Intent(this,Display_Spinner.class);
Bundle bundle = new Bundle();
bundle.putString("COUNTRY", str_country);
bundle.putString("CITY",str_city);
intent.putExtras(bundle);
startActivity(intent);
}
// In your second Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// In your second Activity fetch data like this
Bundle bundle = getIntent().getExtras();
country= (TextView)findViewById(R.id.textView3);
city=(TextView)findViewById(R.id.textView5);
String Counrty_name=bundle.getString("COUNTRY");
String City_name=bundle.getString("CITY");
country.setText(Counrty_name);
city.setText(City_name);
}
}
Обновление 3:
В OnCreate использовании вашей первой активностью в этом коде
country.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
str_country=country.getSelectedItem().toString();
if (position == 0) {
adapter = ArrayAdapter.createFromResource(this, R.array.city_select, android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position == 1) {
adapter = ArrayAdapter.createFromResource(this, R.array.city_india, android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position == 2) {
adapter = ArrayAdapter.createFromResource(this, R.array.city_pakisthan, android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position == 3) {
adapter = ArrayAdapter.createFromResource(this, R.array.city_srilanka, android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
city.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
str_city=city.getSelectedItem().toString();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
может показать мне, как pass plz? – Karthick
Я добавил пример, но вам нужно изменить много вещей, прежде всего получить данные из spinner в методе OnItemSelected. –
спасибо ji..the ошибка в том, что я передаю имя макета Firstactivity во второйActivy, что является причиной для моего приложения Crash :) Спасибо ji ур Код также работает Хорошо :) – Karthick
Попробуйте, что в вашей второй активности.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
country= (TextView)findViewById(R.id.textView3);
city=(TextView)findViewById(R.id.textView5);
Bundle extras = getIntent().getExtras();
if (extras != null) {
String Counrty_name = extras.getString("Country");
String City_name = extras.getString("City");
country.setText(Counrty_name);
city.setText(City_name);
}
}
спасибо ji .. ошибка заключается в том, что я передаю имя макета Firstactivity во второйActivy, что причина моего приложения Crash :) Спасибо ji ur Код также работает Хорошо :) @Distwo – Karthick
Кажется, что код верный, но только один тестовый пример отсутствует. Когда пользователь выбирает какую-либо страну, вы устанавливаете свой адаптер для города, также убедитесь, что вы выбрали значение по умолчанию для города. Поскольку для города не выбрано значение, когда вы нажимаете кнопку, приложение вылетает из-за того, что toString() вызывает нулевую ссылку в строке String city=sp2.getSelectedItem().toString()
. Здесь вы можете сделать следующее:
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if (position==0){
adapter= ArrayAdapter.createFromResource(this,R.array.city_select,android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position==1){
adapter= ArrayAdapter.createFromResource(this,R.array.city_india,android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position==2){
adapter= ArrayAdapter.createFromResource(this,R.array.city_pakisthan,android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
if (position==3){
adapter= ArrayAdapter.createFromResource(this,R.array.city_srilanka,android.R.layout.simple_spinner_item);
sp2.setAdapter(adapter);
}
//write this:
sp2.setSelection(0);//by default first city is selected
}
спасибо ji..и ошибка в том, что я передаю имя макета Firstactivity во второйActivy, что является причиной моего приложения Crash :) Спасибо ji ur Code также работает Хорошо :) – Karthick
- 1. Как передать куки-файлы в новую активность?
- 2. Как передать выбранные данные в следующую активность android
- 3. передать объект tcp client на новую активность
- 4. Android: Как передать объект в новую начальную активность
- 5. Как передать ArrayList пользовательских объектов в новую активность?
- 6. RecyclerView Нажмите, чтобы передать данные в новую активность
- 7. Как передать активность в намерении
- 8. Как передать активность в службу
- 9. Как нарисовать элемент и получить выбранные предметы внутри в sitecore?
- 10. Начать новую активность «позади»
- 11. Передача ArrayList на новую активность
- 12. Добавить новую активность в AndroidManifest?
- 13. Добавить анимацию в новую активность
- 14. Начать новую активность в Android
- 15. Невозможно увидеть новую активность
- 16. Как открыть новую активность в диалоге arg
- 17. Как объявить новую активность в манифесте Android?
- 18. Как отправить данные в новую активность?
- 19. Как передать только выбранные строки в datagridview
- 20. Как передать выбранные значения в javascript
- 21. Как передать выбранные элементы в MVC4 EF5?
- 22. Как получить выбранные предметы из раскрывающегося списка Webpy
- 23. Android: добавление нескольких пакетов в новую активность
- 24. angularjs удалить выбранные предметы с помощью сращивания Функция
- 25. Начать новую активность от PagerAdapter
- 26. Начать новую активность из SearchView
- 27. RecyclerView Cards - Открыть новую активность
- 28. Android, установить новую корневая активность
- 29. Начиная новую активность с жестом
- 30. Начать новую активность из фрагмента
Какая у вас ошибка? – Distwo
После выбора названия страны и города, когда я нажимаю кнопку «К сожалению, приложение было остановлено @Distwo – Karthick
Вам нужно получить трассировку стека от logcat. Это, скорее всего, скажет вам, что не так с вашим кодом. – Distwo