ホームページ ウェブフロントエンド htmlチュートリアル ViewPager の読み込みと削除 Pages_html/css_WEB-ITnose

ViewPager の読み込みと削除 Pages_html/css_WEB-ITnose

Jun 24, 2016 am 11:47 AM

今日は、カルーセル イメージ広告を作成するときに ViewPager を使用し、スライド時のページの読み込みと削除について調べました。

PagerAdapter には destroyItem メソッドと instantiateItem メソッドがあり、前者はページの削除に使用され、後者はページの読み込みに使用されます。


【注意】 現在のページがページ 0 の場合、プログラムは同様に、現在のページが views.size() (ViewPager に読み込まれたビューの数) の場合、instantiateItem メソッドを呼び出しません。 - 1. instantiateItem メソッドは呼び出されません。


観察用に簡単な ViewPager デモ (ナビゲーション ページなど) を作成し、Logcat を使用して情報を出力できます。

(ナビゲーション ページの書き方がわからない場合は、ViewPager を読んでナビゲーション ページを実装してください)

destroyItem メソッドで出力される情報:

Log.d("MainActivity", "Remove page" + 位置 );

instantiateItem メソッドで出力される情報:

Log.d("MainActivity", "Loading page" + Position);

onPageSelected で出力される情報:

Log.d("MainActivity " , "現在選択されているページ" + arg0);


次に、ナビゲーション ページを左から右に、右から左にスライドします (注: 合計 5 ページあります):

情報の印刷:

03-22 15:22:45.713: D/MainActivity(4835): 加载页面 003-22 15:22:45.713: D/MainActivity(4835): 加载页面 103-22 15:22:48.768: D/MainActivity(4835): 当前选择页面 103-22 15:22:49.408: D/MainActivity(4835): 加载页面 203-22 15:22:51.558: D/MainActivity(4835): 当前选择页面 203-22 15:22:52.198: D/MainActivity(4835): 移除页面 003-22 15:22:52.203: D/MainActivity(4835): 加载页面 303-22 15:22:53.988: D/MainActivity(4835): 当前选择页面 303-22 15:22:54.508: D/MainActivity(4835): 移除页面 103-22 15:22:54.508: D/MainActivity(4835): 加载页面 403-22 15:22:55.578: D/MainActivity(4835): 当前选择页面 403-22 15:22:55.928: D/MainActivity(4835): 移除页面 203-22 15:22:58.958: D/MainActivity(4835): 当前选择页面 303-22 15:22:59.503: D/MainActivity(4835): 加载页面 203-22 15:23:01.288: D/MainActivity(4835): 当前选择页面 203-22 15:23:01.928: D/MainActivity(4835): 加载页面 103-22 15:23:01.928: D/MainActivity(4835): 移除页面 403-22 15:23:02.613: D/MainActivity(4835): 当前选择页面 103-22 15:23:03.243: D/MainActivity(4835): 加载页面 003-22 15:23:03.248: D/MainActivity(4835): 移除页面 303-22 15:23:05.138: D/MainActivity(4835): 当前选择页面 003-22 15:23:05.773: D/MainActivity(4835): 移除页面 2
ログイン後にコピー

  • プログラムに入ると


  • プログラムに入ると、表示するページ番号0がロードされ、次にページ番号1がプリロードされ、instantiateItemメソッドが2回呼ばれました。


    当然、最初に入るときにそれを 2 回呼び出す必要があります。最初に自分の画像をロードし、次に次の画像をロードする必要があります。

  • ページ番号 1 にスライドします

  • このとき、もちろんページ番号 2 がプリロードされています。


  • 2ページにスライド

  • ページ0を削除してページ3をロード


  • 3ページにスライド

  • ページ番号 1 を削除して、ページ番号 4 をロードします


  • ページ番号 4 にスライドします

  • ページ番号 2 は最後まで到達しているので削除し、プリロードしないでください。


    転送ダイヤルが完了しました。

    この時点で、一般的なルールも確認できます

    スライドするたびに、現在のページに隣接する 2 つのページが保持され (アンロードされたページはプリロードされ、ロードされたページは保存されます)、隣接するページは削除できません。ただし、ロードされたページは、一度に 3 ページしか存在しないことを意味します。

    逆トグルにも同じ原理が当てはまります。ここで逆トグルの概略図を描く必要はありません。

    このスライド機能を理解すると、ViewPager をより柔軟に使用できるようになります。

    さて、今日はこれについて話しましょう 何か間違っていることがあれば、批判して修正してください!



    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    AI Hentai Generator

    AI Hentai Generator

    AIヘンタイを無料で生成します。

    ホットツール

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無料のコードエディター

    SublimeText3 中国語版

    SublimeText3 中国語版

    中国語版、とても使いやすい

    ゼンドスタジオ 13.0.1

    ゼンドスタジオ 13.0.1

    強力な PHP 統合開発環境

    ドリームウィーバー CS6

    ドリームウィーバー CS6

    ビジュアル Web 開発ツール

    SublimeText3 Mac版

    SublimeText3 Mac版

    神レベルのコード編集ソフト(SublimeText3)

    < Progress>の目的は何ですか 要素? < Progress>の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

    この記事では、HTML< Progress>について説明します。要素、その目的、スタイリング、および< meter>との違い要素。主な焦点は、< Progress>を使用することです。タスクの完了と< Meter> statiの場合

    HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

    HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

    < datalist>の目的は何ですか 要素? < datalist>の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

    この記事では、HTML< Datalist>について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

    < meter>の目的は何ですか 要素? < meter>の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

    この記事では、html< meter>について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化< Meter> < Progress>およびex

    ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? Mar 20, 2025 pm 05:56 PM

    この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

    < iframe>の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? < iframe>の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? Mar 20, 2025 pm 06:05 PM

    この記事では、< iframe>外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

    HTML、CSS、およびJavaScriptの役割:コアの責任 HTML、CSS、およびJavaScriptの役割:コアの責任 Apr 08, 2025 pm 07:05 PM

    HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

    HTMLでの開始タグの例は何ですか? HTMLでの開始タグの例は何ですか? Apr 06, 2025 am 12:04 AM

    Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

    See all articles