установить деятельность с ViewPager - PullRequest
1 голос
/ 28 января 2012

Я пытаюсь создать приложение, подобное google + desing, с титульным листом и переключением между действиями по горизонтали.Я реализовал эту библиотеку для пейджера (https://github.com/JakeWharton/Android-ViewPagerIndicator), и она отлично работает. Но сейчас я не знаю, как настроить различные действия.

Это мой основной класс

package com.rbrlnx.controles;

import android.app.ActionBar;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.view.ViewPager;

import com.viewpagerindicator.TitlePageIndicator;

public class ControlesDeAlcoholemiaActivity extends Activity {

    static final int NUMERO_DE_PAGINAS = 3;  


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

        // Gestion del Pagindor
        ViewPagerAdapter adapter = new ViewPagerAdapter( this );
        ViewPager pager = (ViewPager)findViewById( R.id.viewpager );
        TitlePageIndicator indicator = (TitlePageIndicator)findViewById( R.id.indicator );
        pager.setAdapter( adapter );
        indicator.setViewPager(pager,2);


        //Gestion del ActionBar
        ActionBar ab;

    }

}  

иэто pageradapter

package com.rbrlnx.controles;

import android.content.Context;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;

import com.viewpagerindicator.TitleProvider;

public class ViewPagerAdapter extends PagerAdapter implements TitleProvider
{
    private static String[] titles = new String[]
    {
        "Comunes",
        "Listado",
        "Mapa"
    };    
    private final Context context;

    public ViewPagerAdapter( Context context )
    {
        this.context = context;
    }

    @Override
    public String getTitle( int position )
    {
        return titles[ position ];
    }

    @Override
    public int getCount()
    {
        return titles.length;
    }

    @Override
    public Object instantiateItem( View pager, int position )
    {


        LinearLayout v = (LinearLayout) LayoutInflater.from(this.context).inflate(R.layout.comunes, null);

        if (position == 0) {
            v = (LinearLayout) LayoutInflater.from(this.context).inflate(R.layout.comunes, null);
        } else if (position == 1) {
            v = (LinearLayout) LayoutInflater.from(this.context).inflate(R.layout.listado, null);
        } else {
            v = (LinearLayout) LayoutInflater.from(this.context).inflate(R.layout.mapa, null);
        }

        ((ViewPager) pager).addView(v, 0);

        return v;

    }

    @Override
    public void destroyItem( View pager, int position, Object view )
    {
    }

    @Override
    public boolean isViewFromObject( View view, Object object )
    {
        return view.equals( object );
    }

    @Override
    public void finishUpdate( View view ) {}

    @Override
    public void restoreState( Parcelable p, ClassLoader c ) {}

    @Override
    public Parcelable saveState() {
        return null;
    }

    @Override
    public void startUpdate( View view ) {}
}

Я могу установить макет XML, но я не знаю, как установить класс acitivy. Я думаю, что должен работать с фрагментами, но не уверен.

...