On Jul 19, 10:07 am, "|-NK-|" <[email protected]> wrote:
> On Jun 6, 11:42 pm,NikhilGupta<[email protected]> wrote:
>
>
>
>
>
> > Replace your getItem() with something like this :
>
> >   public Fragment getItem(int index) {
> > switch(index){
> > case 0: return new Frag1();
> > case 1: return new Frag2();
> > default : return null;}
>
> >              }
>
> > where Frag1, Frag2 are the various fragment classes for each layout.
>
> > then in these fragment classes, inflate the respective layout, ex :
>
> >  public View onCreateView(LayoutInflater inflater, ViewGroup container,
> > Bundle savedInstanceState) {
> >      View V= (View) inflater.inflate(R.layout.frag1, container, false);
> >      return V;
> >  }
>
> > Hope it helps!
>
> > On Tuesday, April 17, 2012 1:15:23 AM UTC+5:30, Kibria Ali wrote:
>
> > > I am a beginner Android developer. I am trying to get my head around the
> > > ViewPager. Before I was trying to work with this example:
>
> > >http://mobile.tutsplus.com/tutorials/android/android-user-interface-d...
>
> > > I had the views working, but could not get functionality working within
> > > that, and I was told that I need to use Fragments within the ViewPager.
>
> > > I went with this tutorial instead:
>
> > >http://tamsler.blogspot.co.uk/2011/11/android-viewpager-and-fragments...
>
> > > I have got the basics of a ViewPager with a Fragment working:
>
> > > FragmentPagerActivity.java
>
> > >     import android.os.Bundle;
> > >     import android.support.v4.app.Fragment;
> > >     import android.support.v4.app.FragmentActivity;
> > >     import android.support.v4.app.FragmentManager;
> > >     import android.support.v4.app.FragmentPagerAdapter;
> > >     import android.support.v4.view.ViewPager;
>
> > >      public class FragmentPagerActivity extends FragmentActivity {
>
> > >         private static final int NUMBER_OF_PAGES = 10;
>
> > >         private ViewPager mViewPager;
> > >         private MyFragmentPagerAdapter mMyFragmentPagerAdapter;
>
> > >         public void onCreate(Bundle savedInstanceState) {
>
> > >              super.onCreate(savedInstanceState);
> > >              setContentView(R.layout.main);
> > >              mViewPager = (ViewPager) findViewById(R.id.viewpager);
> > >              mMyFragmentPagerAdapter = new
> > > MyFragmentPagerAdapter(getSupportFragmentManager());
> > >              mViewPager.setAdapter(mMyFragmentPagerAdapter);
> > >         }
>
> > >         private static class MyFragmentPagerAdapter extends
> > > FragmentPagerAdapter {
>
> > >              public MyFragmentPagerAdapter(FragmentManager fm) {
> > >                   super(fm);
> > >              }
>
> > >              @Override
> > >              public Fragment getItem(int index) {
>
> > >                   return PageFragment.newInstance("My Message " + index);
> > >              }
>
> > >              @Override
> > >              public int getCount() {
>
> > >                   return NUMBER_OF_PAGES;
> > >              }
> > >         }
> > >      }
>
> > > PageFragment.java:
>
> > >     import android.os.Bundle;
> > >     import android.support.v4.app.Fragment;
> > >     import android.view.LayoutInflater;
> > >     import android.view.View;
> > >     import android.view.ViewGroup;
> > >     import android.widget.TextView;
>
> > >     public class PageFragment extends Fragment {
>
> > >        public static PageFragment newInstance(String title) {
>
> > >          PageFragment pageFragment = new PageFragment();
> > >          Bundle bundle = new Bundle();
> > >          bundle.putString("title", title);
> > >          pageFragment.setArguments(bundle);
> > >          return pageFragment;
> > >      }
>
> > >      @Override
> > >      public void onCreate(Bundle savedInstanceState) {
> > >          super.onCreate(savedInstanceState);
> > >      }
>
> > >      @Override
> > >      public View onCreateView(LayoutInflater inflater, ViewGroup
> > > container, Bundle savedInstanceState) {
>
> > >          View view = inflater.inflate(R.layout.fragment, container,
> > > false);
> > >          TextView textView = (TextView)
> > > view.findViewById(R.id.textView1);
> > >          textView.setText(getArguments().getString("title"));
> > >          return view;
> > >      }
> > >     }
>
> > > main.xml:
>
> > >     <?xml version="1.0" encoding="utf-8"?>
> > >     <LinearLayout xmlns:android="
> > >http://schemas.android.com/apk/res/android";
> > >         android:layout_width="fill_parent"
> > >         android:layout_height="fill_parent"
> > >         android:orientation="vertical" >
> > >     <android.support.v4.view.ViewPager
> > >             android:id="@+id/viewpager"
> > >             android:layout_width="fill_parent"
> > >             android:layout_height="fill_parent" />
>
> > >     </LinearLayout>
>
> > > fragment.xml:
>
> > >     <?xml version="1.0" encoding="utf-8"?>
> > >     <LinearLayout xmlns:android="
> > >http://schemas.android.com/apk/res/android";
> > >         android:layout_width="match_parent"
> > >         android:layout_height="match_parent"
> > >         android:orientation="vertical" >
>
> > >         <TextView
> > >             android:id="@+id/textView1"
> > >             android:layout_width="wrap_content"
> > >             android:layout_height="wrap_content"
> > >             android:text="TextView" />
>
> > >     </LinearLayout>
>
> > > I want to be able to replace the current layout within the ViewPager with
> > > 7 of my own layouts that already exist and add functionality to the 
> > > layouts
> > > using Fragments. What can I do with the code that I already have and the
> > > changes to make to get this properly working?
>
> > > If there are any examples of a ViewPager with Fragments available online
> > > as well rather than just going briefly over it like the do in the Adroid
> > > Developers blog, I will be very grateful.- Hide quoted text -
>
> > - Show quoted text -
>
> DearNikhil,
>
> I am facing the same problem, where I need to create 3 fragments with
> different controls on them.
>
> I created 3 classes for respective fragments, however I am not able to
> return the Fragment object from the getItem method()
>
> What I did in the getItem method is just used switch case and created
> new objects and returned them (As suggested by you in the above
> answer.)
>
> However its giving me an error that cannot convert from
> MyFragmentClass1 to Fragment.
> (MyFragmentClass1 is Fragment class which represents 1st fragment that
> I need to show.)
>
> Please suggest if I have done anything wrong.
>
> Thanks,- Hide quoted text -
>
> - Show quoted text -


HI

My problem  is solved.

Thanks.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to