Как отобразить данные во фрагменте, полученном в результате действия - PullRequest
0 голосов
/ 11 февраля 2019

Я создал действие, которое содержит кнопку, ViewPager и некоторые фрагменты.Когда я нажимаю на кнопку, DialogActivity открывается и подключается к веб-сервису, используя AsyncHttpClient, и возвращает некоторые строки, которые являются URL-адресами, именами и т. Д., В MainActivity.Я хочу, чтобы MainActivity показывал данные во фрагменте, особенно URL-адрес картинки (используя Glide), но я не могу этого сделать.Я ценю, если вы мне поможете

DialogActivity :

void parsAndShowBiography(String response) {
    try {
        Gson gson = new Gson();
        TheaudiodbBiography theaudiodbBiography = gson.fromJson(response, TheaudiodbBiography.class);
        Intent returnIntent = new Intent(DialogActivity.this, MainActivity.class);

        returnIntent.putExtra("artistThumb", theaudiodbBiography.getArtists()
                .get(0).getStrArtistThumb());
        returnIntent.putExtra("strArtist", theaudiodbBiography.getArtists()
                .get(0).getStrArtist());
        returnIntent.putExtra("artistFanart1", theaudiodbBiography.getArtists()
                .get(0).getStrArtistFanart());
        setResult(Activity.RESULT_OK, returnIntent);
        finish();

MainActivity :

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == 100 && resultCode == Activity.RESULT_OK) {

        ???????????????????????

    }

И это Фрагмент :

public class BiographyFragment extends Fragment {


static BiographyFragment instance;


public static BiographyFragment getInstance() {
    if (instance == null) {
        instance = new BiographyFragment();
    }


    return instance;
}


@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.bigraphy_fragment, container, false);
    return view;
}

Я поместил некоторые TextViews и ImageViews в XML-файл Fragment.

, и если это поможет, это UX:

enter image description here

1 Ответ

0 голосов
/ 18 февраля 2019

Привет, ребята, я решил вопрос с этим кодом:

MainActivity:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == 100 && resultCode == Activity.RESULT_OK) {

        View test=BiographyFragment.getInstance().getView();

        Glide.with(this).load(data.getStringExtra("artistFanart1")).into(
                            (ImageView)test.findViewById(R.id.artistFanart1));

    }
...