1

アプリケーションにいくつかのアクティビティとレイアウトを入れたいと思っています。科学、自然などについて読むには 100 ページが必要です。しかし、私は100のレイアウトを作りたくありません。リストの場合と同じように、ビュー アダプターにさまざまなページを追加したいと考えています。すべてに同じレイアウトを使用し、新しいデータを追加するだけです (リストのように)。リストビューのコンセプトは同じだが、データが異なるページを作成したい。

私が話していることについての投稿が既にあります: Using viewpager in my application but I can't understand how to do it.. 私はいくつかの試みをしました.. Android-support-v4.jar を libs に入れました.. 私はxmlファイルを作成しました:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"

android:orientation="vertical"

 >
<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="0px"
    android:layout_weight="1" >
</android.support.v4.view.ViewPager>

</LinearLayout>

次のステップはどれですか?

4

2 に答える 2

1

このViewPagerを見てください。基本的に、必要なページを提供するアダプタを作成する必要があります。FragmentStatePagerAdapterページ数が多い場合は、ページ数が多い場合に最適化されたを使用することをお勧めします。

さらに良いことに、 Androidドキュメントでこの例を見てください。

于 2013-01-11T16:25:42.810 に答える
0

オレグの答えに加えて、ダウンロードできるソースコードが含まれていることがわかったこの簡単なチュートリアルを追加します. TextViewこれは、 の代わりに必要なものであると私が信じているを表示する方法を示していますImage。与えられたリンクの 1 つから基本を理解したら、ArrayList(おそらく独自のクラスで) を作成し、そこからデータを取得して各ページに追加することをお勧めしTextViewます。する予定です。時間をかけて、これらのコンポーネントがどのように連携するかの基本を理解していることを確認していただければ、残りの作業は簡単になると思います。

FragmentStatePagerAdapter大量のページ/データがあるため、おそらく a を使用したいという Oleg の回答に同意します。しかし、このチュートリアルを試してみて、これらすべてがどのように連携するかを理解するのに役立つかどうかを確認してください. 幸運を!

アップデート

これまでにこれを行ったことがないので、うまくいく可能性があるものを示すために最善を尽くします。自分でいじらないと、確かなことは言えませんが、これを試してみます(turorialのコードと、配列を返す作成されたクラスを使用します)

 public Fragment getItem(int arg0) {
    MyFragment myFragment = new MyFragment();
    Bundle data = new Bundle();
    String myArrayString = new ArrayClassName().getText(arg0);  //This should get a string value from a method you create in your Array class called getText()
    data.putInt("current_page", arg0);
    myFragment.setArguments(data);
    return myFragment;  //this hopefully gets passed back to onCreateView()
}

次にsetText(mCurrentPage)、 で行ったように使用してonCreateView()、ページ テキストを設定します。これはすべて頭の中でやったので、何かを見逃しているかもしれませんが、このようなものがあなたを始めるきっかけになると思います. 以前はこれを使用していなかったので、うまくいくといいのですが:D

于 2013-01-11T21:08:49.967 に答える