2012-01-08 1 views
0
私はViewPageIndicatorライブラリ from here

ViewPageIndicatorライブラリ

の使用について読んでい

を使用してアプリ内のレイアウトを膨らませると、私は自分のアプリケーションでスワップ作品を見ることができます。私はライブラリ全体のコードを理解していないと私は "ページインジケータ"のそれぞれのために自分のビューを膨らませようとしていると私はどのようにわからない。 はViewPagerAdapterクラスでは、この方法があります:

public Object instantiateItem(View pager, int position) { 
    //TextView v = new TextView(context); 
    //v.setText(titles[position]); 
    //((ViewPager) pager).addView(v, 0); 

    LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View view = inflater.inflate(R.layout.weekevents, null); 
    ((ViewPager) pager).addView(view,1); 
    return view; 
} 

は、私は私がここに私のレイアウトを膨らませる必要があることを理解するべきでしょうか?私はスワップしている各ページのレイアウトを持っています。私がレイアウトを膨らませると、何も起こらない。 上記のリンクと同じコードなので、私はコードを投稿しませんでした。 これでどのように作業するのかを理解しようとしています。 アイデアは素晴らしいでしょう。

答えて

0

私はinstantiateItem()をオーバーライドし、ページごとに適切なレイアウトを展開すると言います。 (位置が1の場合は、このレイアウトを膨張させ、位置が2の場合は別のものを膨張させます)。

上記のコードスニペットは、位置に基づいてリソースを区別しません。

+0

hm、thx :)私がもっと持っていても、特定のビューしか返さないでしょうか? 'LayoutInflater weekInflater =(LayoutInflater)context \t \t \t \t .getSystemService(Context.LAYOUT_INFLATER_SERVICE);次のようにします。 \t \t viewWeek = weekInflater.inflate(R.layout.weekevents、null); \t \t((ViewPager)ページャ).addView(viewWeek、0); \t \t LayoutInflater dayInflater =(LayoutInflater)コンテキスト \t \t \t \t .getSystemService(Context.LAYOUT_INFLATER_SERVICE)。 \t \tビューviewDay = dayInflater.inflate(R.layout.dayevents、null); \t \t((ViewPager)ページャ).addView(viewDay、1); \t \t return viewWeek; –

+0

ページャの特定の位置のビューを初期化するように要求します。それはリストアダプターのような同じパターンです - それは項目番号xに適したビューを求めます - あなたは膨らませて、 –

+0

を働かせました。どうも :) –