問題タブ [android-pageradapter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
10775 参照

android - Imageview と PagerAdapter

ViewPager (本のように) の各ページに画像を配置したい。これらの画像は、次の URL のリストから取得されました。

私のアダプターは次のようになります:

そして私は asynctask のおかげでそれらの画像を撮ります:

問題は、それがまったく機能しないということです。

0 投票する
2 に答える
4848 参照

android - PagerAdapter にデータをフィードする方法

この例を使用して、 aとViewPageraを使用していPagerAdapterます。しかし、を使用してデータをロードする場所PagerAdapterのように、アダプターからのデータをどのようにフィードできますか?CursorAdapterCursorLoader

のみかかります.setAdapter()。次に、 を内にバインドする必要があると思いますが、これを行う方法が見つかりませんでした。ViewPagerPagerAdapterCursorAdapterPagerAdapter

0 投票する
2 に答える
8503 参照

android - PagerAdapterAndroidをインスタンス化する

2こんにちはみんな私は水平ポケットベルとAndroidのサポートパッケージを使用してアプリを構築しようとしています。この正確なコードを別のプロジェクトでコンパイルしましたが、2番目のコード例の最後の行でコンパイルできません。日食は言っていますCannot instantiate the type PagerAdapter

私の輸入品

私のコード

インポートまたはプロジェクトの設定に問題があると思いますか?さらに情報が必要な場合はお知らせください。このコードは他のプロジェクトでも機能しています。

ありがとう

0 投票する
2 に答える
11387 参照

android - PagerAdapter のメソッド instantiateItem(ViewGroup container, int position) に関するいくつかの混乱

PagerAdapter のサンプル コードをいくつか読みましたが、それらはすべて addview メソッドを記述しています。上記は簡単なコードです. 'return view' は表示用のビューを返すために使われます. しかし, container.addView(view) は何をしますか?

0 投票する
1 に答える
2263 参照

android - PageTabStripクラスが見つかりません例外

さて、私はpagertitlestripを使うことにしました。私が使用しているサポートライブラリにはpagertabstripが含まれていないと想定しています。すべてが正しく更新されたと思ったので、これを修正する方法がわかりません。編集:これはもう存在しませんか?PagerTabStripをPagerTitleStripに変更すると、すべてが機能しますが、期待されるタイトルを操作できません。そのため、PagerTabStripを使用したかったのです。

私は自分の問題の根本を見つけるために基本に戻りました。ABSをインポートした新しいプロジェクトを開始しました。非常に単純なpagerAdapterと単純なフラグメントを設定します。コモンズの本の例を使用しましたが、それでも同じエラーが発生します。クラスが見つかりません例外。PagerTabStripが見つかりません。投稿されたスタックは毎回同じエラーを受け取ります。PagerTabStripを削除すると、すべてが正しく機能します。

xml

主な活動

アダプタ

断片

エラー

どんな助けでも素晴らしいでしょう。この問題を解決するためにどこを見ればよいかわかりません。PagerTabStripがサポートライブラリで見つからないという非常に基本的なことを見逃しているように感じます。

0 投票する
2 に答える
4839 参照

android - ViewPager は、画面の回転後にアイテムを順不同で再インスタンス化します

Infinite ViewPagerViewPagerの回答と同様のコードで、いくつかの ListViews を含むを使用しています。アイデアは、Googleカレンダーアプリの日ビューのようなものを用意することです(そのソースは利用できないようです。デフォルトのカレンダーアプリのみが使用されています)-ユーザーが左右に無限にスワイプできるようにしたいですが、実際には には 3 つの項目しかありません。ユーザーがページ 0 または 2 にアクセスすると、1 を現在のページとして設定し、それに応じて更新します。ViewSwitcherViewPager

これですべて動作します。ただし、奇妙なことに、電話が回転してアクティビティが再構築されると (configChanges今のところ使用を避けています)、アプリ内のページが再びインスタンス化されますが、順序が正しくありません。0->1->2 の代わりに、1->0->2 の順序になり、これによりアプリ内のページの順序が台無しになります。

私のフラグメント、onActivityCreated():

ページャー アダプター:

回転後にページが 1->0->2 の順序でインスタンス化される理由がわかりません。私も状態を保存していません。これに関する洞察は役に立ちます。

0 投票する
1 に答える
122 参照

android - ListFragment のクリックが間違ったフラグメントによって応答される

ListFragmentsそれぞれ異なる SQLite テーブルまたはビューを表示するシリーズがあります。スワイプ可能なタブ レイアウトでそれらを切り替えます。

呼び出される Intent 引数に応じて、同じアクティビティに読み込まれる 2 つの異なるスワイプ可能なレイアウトがあります。アラート ダイアログとアクションバーのボタンは、スワイプ可能なレイアウトを切り替えます。スワイプ可能なタブの設定については、 http: //www.pushing-pixels.org/2011/08/11/android-tips-and-tricks-swipey-tabs.html で説明されています。

アイテムをクリックした後に問題が発生。

例外は、SELECT 句が以下の最初の宣言からのものであるのに対し、VIEW は 2 番目の宣言からのものであることを示しています。

呼び出されるフラグメントは次のとおりです。

そしてアダプターはこちら

各フラグメントには一意のローダー ID があります。プロジェクト全体で互換モードを維持しています。

0 投票する
0 に答える
291 参照

android - FragmentStatePagerAdapter を使用してページングでフラグメント (onCreate) を再作成する方法

ページングの実行時にフラグメントを再作成するという奇妙な状況に陥っています。FragmentStatePagerAdapter を使用しています。

たとえば、2 つの異なるフラグメントで 2 つのシークバーを使用する場合、2 番目のフラグメントのシークバーが、最初のフラグメントのシークバーの値に従って更新されるようにします。

ページング メソッドを使用しない場合、フラグメントの作成時にシークバーを更新する静的グローバル変数を使用しています。

したがって、タブでアクションバーを使用すると、タブを変更するとフラグメントが毎回新しく作成されるため、期待される結果が得られます。

ページング メソッドを使用してこれら 2 つのフラグメント間をスワイプすると、フラグメントの状態が保持され、onCreate がまったく呼び出されないため、期待どおりに更新されません。

私は使用しました

私の拡張FragmentStatePagerAdapterクラスでは使用できません。

これに対する回避策は何ですか。

助けてください!

0 投票する
1 に答える
2674 参照

android - ビューページャーが最初に作成されたときに指定されたページを表示する

を含むフラグメントがありますViewPager。これViewPagerは、PagerAdapterを使用するによってサポートされていますCursor。カーソルは によって管理されLoaderCallbacksます。ここでは v4 サポート ライブラリを使用しています。

私が望むのは、フラグメントを作成し、ページ 0 から開始するのではなく、ビュー ページャーに指定したページを表示させることです。

ViewPagerメソッドがあることは知ってsetCurrentItem()いますが、 が作成されたときにデータがまだロードされていない可能性がありますViewPager。必要なのは、データ セットの変更についてアダプターをリッスンすることです。それが最初の変更である場合は、setCurrentItem()onを呼び出しますViewPager

ただし、クラスはメソッドPagerAdapterをエクスポートしません。registerDataSetObserver()アクセスするのではpackageなくpublic(少なくともv4サポートライブラリでは)持っています。

私がやったことは、私にはハックのように思えますが、次のとおりです。

(メソッド内の) アダプターへのデータのロードと、メソッド内でのonCreate()作成の間に競合状態があります。したがって、現在のページは、(a) ページャーが存在するがデータが初めてロードされる場合、または (b) ページャーが作成される前にデータがロードされる場合に設定できます。ViewPageronCreateView()

上記の両方のケースを処理しようとしましたが、オブザーバーを使用して、より堅牢な (できればより単純な) 代替アプローチが必要であると考えています。