4

ViewPagerIndicator を使用して、最も人気のあるアプリケーションのように WalkThrough を取得しました。ViewPagerしかし、アプリケーションの使用方法を示す写真を追加する方法がわかりません。

ウォークスルー 私が欲しいのは、これらのウォークスルーのようなものです。

私が行った場所 私が行った場所 今まで得たもの。

私は知らないよ

のようなカスタム ビューを追加するImageView方法TextViewViewPager?

どんなガイダンスも大歓迎です。

4

2 に答える 2

0

質問は非常に古いので、短い一般的なガイドラインを書きます。

ビューページャーにコンテンツを入力するには、アダプターにフラグメントを追加してから、アダプターをビューページャーに設定します。画像/テキストなどを配置して、フラグメント内でほとんどすべてのレイアウトを行うことができます..

于 2014-11-16T17:19:47.187 に答える
0

Inteist が示唆しているように、任意のレイアウトをフラグメントに入れ、そのフラグメントをアダプターに供給することができます。

断片:

    public final class SelectModelFragment extends Fragment {
    private static final String KEY_CONTENT = "SelectModelFragment:Content";
    private static String TAG = SelectModelFragment.class.getSimpleName();

    private SelectModel mSelectModelObj;

    private CircularImageView mImageView;

    public static SelectModelFragment newInstance(SelectModel obj) {
        SelectModelFragment fragment = new SelectModelFragment();
        fragment.mSelectModelObj =obj;

        return fragment;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        if ((savedInstanceState != null) && savedInstanceState.containsKey(KEY_CONTENT)) {
            mSelectModelObj = savedInstanceState.getParcelable(KEY_CONTENT);
        }
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_select_model, container, false);
        mImageView = (CircularImageView)view.findViewById(R.id.fragment_select_model_iv);
        return view;
    }

    @Override
    public void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putParcelable(KEY_CONTENT, mSelectModelObj);
    }
}

フラグメントアダプター:

public class SelectModelAdapter extends FragmentPagerAdapter {

    ArrayList<SelectModel> mList;
    private int mCount;
    private static final String TAG = SelectModelAdapter.class.getSimpleName();

    public SelectModelAdapter(FragmentManager fm, ArrayList<SelectModel> mList) {
        super(fm);
        this.mList = mList;
        mCount =  mList.size();
    }

    @Override
    public Fragment getItem(int position) {
        return SelectModelFragment.newInstance(mList.get(position));
    }

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

    @Override
    public CharSequence getPageTitle(int position) {
        return TAG;
    }

    public void setCount(int count) {
        if (count > 0 && count <= 10) {
            mCount = count;
            notifyDataSetChanged();
        }
    }
}

アクティビティ: ViewPager には Fragment にフィードする Fragment Adapter があります。

public class SelectModelActivity extends BaseSliderActivity {

    private ViewPager mPager;
    private SelectModelAdapter mAdapter;

    private ArrayList<SelectModel> mList;
    private void setAdapter() {
            mAdapter = new SelectModelAdapter(getSupportFragmentManager(), mList);
            mPager.setAdapter(mAdapter);
            mIndicator.setViewPager(mPager);
        }
}
于 2014-11-17T05:20:33.053 に答える