2

このメニューを Android で再現する必要があります。-> MenuVideo サンプル
どうすればこれを実装するのが最善の方法でしょうか!??通常はViewPager. しかし、ビデオのビュー 2 と 3 のように次のビューの一部を表示するにはどうすればよいでしょうか。他のビューのテキストの一部がどのように見えるかに注目してください
顧客は、次のビューを少し表示することで、スクロール可能であることをユーザーに示したいと考えています。

どうすればHorizontalScrollViewその跳ねる動作を与えることができますか。私がリソースとして得たのは、テキストを含む広い背景のpngだけです.!
これを解決して、Android で動画からメニューを作成するにはどうすればよいでしょうか?! つまり、iosで実行可能です。

4

4 に答える 4

1

両端のページのコンテンツを表示するようにカスタマイズされた水平スクロールビューが必要になります。また、ページの最後にスナップするように、タッチ イベントを適切に処理する必要があります。

私のプロジェクトの 1 つで同様の要件があり、SnappingScrollViewでコードを GitHub にプッシュしたので、誰かの役に立ちました。

それが何かの役に立つかどうか私に知らせてください。

別の方法として、カスタム ページ幅のページャー アダプターを使用することもできますが、前のページのコンテンツは表示されません。

于 2013-03-24T11:12:05.853 に答える
0

背景を 4 つのドローアブル アセットに分割した Viewpager を使用できます。ビューページャーは、配列リスト内の位置に基づいてそれらをロードします。

テキストを含まないプレーンな画像アセットが必要です。テキストは、個々のビューの一部である個別の画像である必要があります。さまざまなAndroidデバイスが画像をどのように拡大縮小するかを予測することは困難/ほぼ不可能であるため、目に見えないホットリンクを配置することはできません

于 2013-03-13T20:07:52.060 に答える
0

これはかなり簡単に行うことができます:

yourViewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {

    @Override
    public Fragment getItem(int position) {
        //return whatever fragment you want;
    }
    @Override
    public float getPageWidth(int position) {
        return 0.8f;
    }
    @Override
    public int getCount() {
        //return the count;
    }
});
于 2013-03-23T10:21:15.103 に答える
0

あなたは試すことができますHorizontal View Swiping with ViewPager、またはViewFlipper私は以下の両方のリンクを追加しました.

ViewPager は、ビューの再利用とリサイクルを完全に制御できる PagerAdapter からビューを取得します。FragmentPagerAdapter と呼ばれる PagerAdapter 実装は、ViewPager での Fragments の使用を容易にするために提供されます。

 <android.support.v4.view.ViewPager
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        … />

サポートデモ:

  public static class MyAdapter extends FragmentPagerAdapter {
        public MyAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public int getCount() {
            return NUM_ITEMS;
        }

        @Override
        public Fragment getItem(int position) {
            return ArrayListFragment.newInstance(position);
        }
    }

FragmentPagerAdapter は、リストをスワイプすると各フラグメントをデタッチしますが、ユーザーがスワイプして戻るときに簡単に再アタッチできるように、フラグメントをメモリに保持します。

詳細については、このリンクを試してください

または、あなたが行くことができるかもしれませんViewFlipper

public class ViewFlipperActivity extends Activity implements OnGestureListener,
        OnTouchListener {

    private ViewFlipper mViewFlipper;
    private GestureDetector mGestureDetector;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.viewflipper_layout);

        mGestureDetector = new GestureDetector(this);
        mViewFlipper = (ViewFlipper) findViewById(R.id.viewflipper);
        mViewFlipper.setOnTouchListener(this);
        mViewFlipper.startFlipping();
    }

    @Override
    public boolean onDown(MotionEvent e) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void onShowPress(MotionEvent e) {
        // TODO Auto-generated method stub

    }

    @Override
    public boolean onSingleTapUp(MotionEvent e) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
            float distanceY) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void onLongPress(MotionEvent e) {
        // TODO Auto-generated method stub

    }

    @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
            float velocityY) {
        // TODO Auto-generated method stub
        if (e2.getX() - e1.getX() > 0) {
            //mViewFlipper.showPrevious();
        } else {
            //mViewFlipper.showNext();
        }
        return true;
    }

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        // TODO Auto-generated method stub
        mGestureDetector.onTouchEvent(event);
        return true;
    }

}

ViewFilpper 制御システムには、コントロールの 1 つが付属しており、メイン スイッチと同じ画面アニメーションで設定され、自動再生されます。使用方法は上記のとおりです。したがって、この例が必要です!!!!

于 2013-03-23T10:23:55.770 に答える