Каким образом метод уведомления представления переработчика во фрагменте из операции детализации? - PullRequest
0 голосов
/ 18 января 2020

Структура моего проекта следующая:

Основная деятельность с навигационным ящиком, в котором я выбираю фрагмент новостей, это действительно просмотрщик, с двумя фрагментами внутри, новости с видом переработчика, где он Появляются все фрагменты новостей и избранного, в которых показаны те, которые помечены как избранные.

У меня также есть детальное действие, которое начинается с намерения во фрагменте новостей, когда я нажимаю на одно из них, внутри этого последнего действия, которое я у меня есть кнопка, которая «представляет» новости в списке избранных, несмотря на это, когда я перехожу к фрагменту избранного, нового там не появляется, и мне нужно перейти на другую страницу ящика навигации, чтобы заставить фрагмент уничтожить, и когда я назад к фрагменту, он уже появляется.

Так что я не уверен, где должна быть расположена функция, чтобы уведомить адаптер списка избранных для мгновенного отображения новостей.

Спасибо.

Это код:

Подробности деятельности:

       public class DetailActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_detail);

        //pongo la toolbar

//        Toolbar toolbar = findViewById(R.id.toolbar);
//        setSupportActionBar(toolbar);
//
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setDisplayShowHomeEnabled(true);
        ImageView im= findViewById(R.id.detail_image);
        .......

        FloatingActionButton f_fav=findViewById(R.id.fab);

        Button see_=findViewById(R.id.see_also_button);
        final Articles a= (Articles) getIntent().getSerializableExtra("Article");

        Picasso.get().load(a.getUrlToImage()).into(im);//pongo la imagen

......

        f_share.setOnClickListener(new View.OnClickListener() {//listener to share button

            ........

        see_.setOnClickListener(new View.OnClickListener() {//listener to see button

           .......

            }
        });

          f_fav.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                new Putfav().execute(a);

                //**Here is where I should call a method that update the adapter**
                                         }
        });
    }                      

Новый Адаптер s:

 private void asignarCampos(final Articles article) {

            title.setText(article.getTitle());//set title
            desc.setText(article.getDescription());//set content

            Picasso.get().load(article.getUrlToImage()).into(image);


            //hacer cosas cuando pete la URL
            //por ejemplo porner una imagen standar de noticia
//            .load(...).placeholder(ruta de imagen)



            card.setOnClickListener(new View.OnClickListener() {//Listener to go to detail activity

                @Override
                public void onClick(View v) {

                    Intent detail=new Intent(itemView.getContext(), DetailActivity.class);

                    detail.putExtra("Article",article);

                    itemView.getContext().startActivity(detail);
                }
            });

Фрагмент избранного

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
        // Inflate the layout for this fragment

        Log.i(TAG,"OncreateView");

        View v=inflater.inflate(R.layout.fragment_favorites, container, false);

        Recycler=v.findViewById(R.id.RecyclerFav);//le meto la lista


        Recycler.setLayoutManager(new LinearLayoutManager(getContext()));


        new loadfavs().execute();//load the favorites news from an Asynctask inner class that check the database

        return v;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...