2016-11-28 1 views
0

上のカスタムビューにViewPagerを追加私はこのアンドロイド

enter image description here

のように見えるカスタムビューがViewPagerで、内側のページングを実装する方法はありますか? OnDrawメソッドで

viewPager = (ViewPager) viewPagerLayout.findViewById(R.id.pager); 

    viewPager = new ViewPager(getContext()); 
    viewPager.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); 
    viewPager.setId(View.generateViewId()); 
    viewPager.setBackgroundColor(Color.BLUE); 

: 私はVPをこのように作成しようとした私が望むよう

viewPager.measure(canvas.getWidth(), canvas.getHeight()); 
    viewPager.layout(0, 0, canvas.getWidth(), canvas.getHeight()); 
    if (viewPager != null) 
     viewPager.draw(canvas); 

Viewpager自体は、内部に描かれているのが、ページング能力なし。アダプタ内のメソッドinstantiateItemは決して呼び出されません。 スタンドアロンのビューページおよびアダプタは、別のアクティビティでは動作していますが、カスタム表示では動作していません。

+0

なぜキャンバスの魔法? – EpicPandaForce

+0

@EpicPandaForce私は別の方法でこれを行う方法を知らない...これは、多くのカスタムアニメーションでカスタムコンポーネントを作るための私の最初の試みです。それはいくつかのdrawablesまたは何かを使用する方が良いでしょうか? – Sparrow318

答えて

0

あなたのコードから私はあなたが何かの方法(onDraw?)の中でViewPagerを単に描いているのを見ます。写真を印刷して、その人と話したいのと同じです... ViewPager全体をContextのコンテナに追加して、それと対話できるようにしなければなりません。それはなぜActivity(IS Context)内でまっすぐに働いているのか、XMLで追加されていて、単にその "ルック"を描いたときには機能しないのですか?

+0

ああ、そうだ。説明をありがとう。 – Sparrow318