Problem z getIntent(). oraz findViewById we Fragmencie

0

Witajcie,

  1. mam problem z metoda* findViewById *we fragmencie w którym wyświetli się text podsumowujący dane wpisane w poprzednich fragmentach. Słyszałem, że żeby nie wyrzucało błędu trzeba we fragmencie użyć findViewById ale w klasie *onViewCreated() *a nie w klasie jak mam teraz onCreateView. Zgubiłem się. Pomożcie :)

  2. jak dopisać "KEY ANSWER", true obok "KEY ANSWER, false? - to zapewne banalne ale dla początkującego jeszcze trudne :)


```@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_41, container, false);
        TextView textViewDisplayResult = (TextView) findViewById(R.id.text_view_display_result);

        textViewDisplayResult.setText(getActivity().getIntent().getBooleanExtra("KEY_ANSWER", false)?R.string.Good_answer:R.string.Wrong_answer);
    }


0

Najpierw zwracasz wartość funkcji (czyli kończysz funkcję) a potem próbujesz coś ustawiać.

0

Nie wiem dokładnie co masz na myśli Lukasz_. Mógłbyś dać przykład?

Temat jest taki - mam AnswerActivity.java


import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

public class AnswerActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_answer);
        TextView textViewDisplayResult = (TextView) findViewById(R.id.text_view_display_result);

        textViewDisplayResult.setText(getIntent().getBooleanExtra("KEY_ANSWER", false)?R.string.Good_answer:R.string.Wrong_answer);
    }
}

Które chcę przenieść do Fragmentu żeby w nim wyświetlana była odpowiedź. 



    public Fragment3() {
        // Required empty public constructor
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_3, container, false);
    }

}

Jak to zrobić ?
0

Ale co konkretnie chcesz przenieść do fragmentu?

0

Z AnswerActivity.java chcę przenieść to do ostatniego fragmentu aplikacji aby tu wyświetlała się odpowiedź, a nie w AnswerActivity. Do tej pory gdy jest w AnswerActivity wszystko działa dobrze ale jak tylko przenosze poniższy kod do Fragmentu zaraz wyrzuca mi błędy. Dodałem już *getView() * przed findViewById i ta linia jest już bez błędu. Teraz pozostało uporać się tylko z tym problem

Błąd z textViewDisplayResult we Fragmencie.


```package make.appaplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

public class AnswerActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_answer);
        TextView textViewDisplayResult = (TextView) findViewById(R.id.text_view_display_result);

        textViewDisplayResult.setText(getIntent().getBooleanExtra("KEY_ANSWER", false)?R.string.Good_answer:R.string.Wrong_answer);
    }
}



0

Po pierwsze formatuj poprawnie posty bo nie jestem w stanie tego rozczytać. Po drugie wklej też błędy.

0

No właśnie - jak poprawnie je formatować żeby nie wyświetlała się treść w miejscu kodu? Cholera, nie wiem jak oddzielić ten tekst od kodu. Uff, udało się choć nie do końca tak jak chciałem...

A co do błedu o który pytasz - Cannot resolve method 'getIntent()'

1 użytkowników online, w tym zalogowanych: 0, gości: 1