Страница 1 из 1

не передаются данные между активити

Добавлено: 10 ноя 2014, 22:03
iandryxa
Всем привет , возникла такая проблема при передачи данных от одной активити к другой, есть список (FragmentList) при нажатии на каждый из пунктов открывается активити с фрагментом, в котром на EditText выводится заголовок пункта списка, так вот проблема в том, что при вызове интента и передачи ему ключ/значения

Код: Выделить всё

@Override
    public void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        Intent i = new Intent(getActivity(), MainActivity.class);
        //передаем через интент во фрагмент представления заголовок пункта списка
        i.putExtra("title_post", titlePost.getText().toString());
        Log.e(TAG, "Активити предаставления передан титл "+titlePost.getText().toString());
        startActivity(i);
        Log.e(TAG, "выбран пункт списка "+position);
    }
Все работает нормально, значения считываются и передаются(как говорят логи), однако уже во фрагменте логи говорят что пришло null

Код: Выделить всё

user = (String)getActivity().getIntent().getStringExtra(user);
            Log.e(TAG, "активити получил титл списка "+user);
Что может быть не так?

Re: не передаются данные между активити

Добавлено: 11 ноя 2014, 07:31
finberg
iandryxa писал(а):Всем привет , возникла такая проблема при передачи данных от одной активити к другой, есть список (FragmentList) при нажатии на каждый из пунктов открывается активити с фрагментом, в котром на EditText выводится заголовок пункта списка, так вот проблема в том, что при вызове интента и передачи ему ключ/значения

Код: Выделить всё

@Override
    public void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        Intent i = new Intent(getActivity(), MainActivity.class);
        //передаем через интент во фрагмент представления заголовок пункта списка
        i.putExtra("title_post", titlePost.getText().toString());
        Log.e(TAG, "Активити предаставления передан титл "+titlePost.getText().toString());
        startActivity(i);
        Log.e(TAG, "выбран пункт списка "+position);
    }
Все работает нормально, значения считываются и передаются(как говорят логи), однако уже во фрагменте логи говорят что пришло null

Код: Выделить всё

user = (String)getActivity().getIntent().getStringExtra(user);
            Log.e(TAG, "активити получил титл списка "+user);
Что может быть не так?
В переменной user лежит правильный ключ(title_post)?
PS делать каст не обязательно:
user = getActivity().getIntent().getStringExtra(user);

Re: не передаются данные между активити

Добавлено: 11 ноя 2014, 07:47
klblk
user = (String)getActivity().getIntent().getStringExtra("title_post");

Но я не уверен что это сработает, во фрагмент лучше передавать аргументы при его создании.

Re: не передаются данные между активити

Добавлено: 11 ноя 2014, 19:04
iandryxa
все отлично, спасибо за помощь)