1

I am following this SO answer . but I have error cannot resolve method setarguments on this line

          details.setArguments(getIntent().getExtras());

this is the code

public class SingleViewActivity extends FragmentActivity {

    MyPageAdapter pageAdapter;
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_page_view);

        List<Fragment> fragments = getFragments();

        if (savedInstanceState == null) {
            // During initial setup, plug in the details fragment.
            MainActivity details = new MainActivity();
            details.setArguments(getIntent().getExtras());
            getSupportFragmentManager().beginTransaction().add(android.R.id.content, details).commit();
        }
/*
        pageAdapter = new MyPageAdapter (getSupportFragmentManager(), fragments);
        ViewPager pager=(ViewPager)findViewById(R.id.viewpager);
        pager.setAdapter(pageAdapter);*/
//        pageAdapter = new MyPageAdapter (getSupportFragmentManager(), fragments);
        ViewPager pager=(ViewPager)findViewById(R.id.viewpager);
        pager.setAdapter(pageAdapter);
    }
    private  List<Fragment> getFragments() {
        List<Fragment> flist = new ArrayList<Fragment>();

        flist = new ArrayList<Fragment>();

        flist.add(MyFragment.newInstance("frag1"));
        flist.add(MyFragment.newInstance("frag2"));
        flist.add(MyFragment.newInstance("frag3"));
        return flist;
    }
    public static class MyPageAdapter  extends PagerAdapter {
        //private List<Fragment> fragments;
        Context mContext;
        LayoutInflater mLayoutInflater;

        public MyPageAdapter(Context context)
        {
            mContext = context;
            mLayoutInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        }
        @Override
        public boolean isViewFromObject(View view, Object object)
        {
            return view ==((LinearLayout) object);
        }
        @Override
        public Object instantiateItem(ViewGroup container, int position)
        {

            View itemView =mLayoutInflater.inflate(R.layout.pager_item,container,false);
            ImageView imageView= (ImageView) itemView.findViewById(R.id.viewpager);
            String Item = getActivity().getIntent().getExtras().getString("name");

            Bundle bundle = this.getArguments();

            //Bundle bundle = getIntent().getExtras();

            ArrayList<Listitem> personArrayList = bundle.getParcelableArrayList("Person_List");

            if (personArrayList != null && !personArrayList.isEmpty()) {
                for (Listitem person : personArrayList) {
                    Picasso.
                            with(this).
                            load(person.url)
                            .placeholder(R.drawable.logo)
                            .fit()
                            .noFade()
                            .into(imageView);
                    Log.i("PersonsActivity",String.valueOf(person.url));
                }
            }

            imageView.setImageResource();
            container.addView(itemView);
            return itemView;
        }

        @Override
        public int getCount()
        {
            return this.fragments.size();
        }
    }

}
Community
  • 1
  • 1
Moudiz
  • 7,211
  • 22
  • 78
  • 156
  • What does `MainActivity` extend? `Fragment` has a `setArguments()` method, `FragmentActivity` does not. – emerssso Jan 06 '16 at 19:12

1 Answers1

1

In the link you provided, setArguments() was called on a fragment, not an activity.

In your code you are trying to add an activity as a fragment:

MainActivity details = new MainActivity();
details.setArguments(getIntent().getExtras());
getSupportFragmentManager().beginTransaction().add(android.R.id.content, details).commit();

Define a fragment to add to SingleViewActivity and use that instead.

Alex Loper
  • 135
  • 10
  • thanks for your feedback Alex , I am new working with fragments, and i am going to do more example about it , the `SingleViewActivity` already has a fragment called `MyFragment` but how to use it ? I really appreciate your help to make me understand it more – Moudiz Jan 07 '16 at 06:36