Lottie on Android (Part 3)

Xin chào các bạn, ở bài trước mình có giới thiệu cho các bạn về Animation Listener và Custom Animator với Lottie.
Trong bài này mình sẽ giới thiệu cho các bạn về cách điều chỉnh các thuộc tính động. Bạn có thể điều chỉnh các thuộc tính động trong thời gian đang chạy của nó. Một số mục đích như:

  • Thay đổi chủ đề.
  • Thay đổi kích thước và thời gian.
  • Đáp ứng với những sự kiện lỗi hay thành công.

Nội dung bài bao gồm:

  • Hiểu về After Effects để có thể vận dụng vào trong bài này.
  • Cần có những gì để thay đổi?
  • Cách thực hiện nó như thế nào?

Hiểu về After Effects

Để điều chỉnh các thuộc tính trong Lottie thì mình cần hiểu các thuộc tính đó.
Các thuộc tính này được kế thừa từ các thuộc tính trong After Effects. Trong After Effects, nó là tập hợp các Layer ứng với mỗi một thời gian. Đối tượng trong Layer bao gồm: tên, màu sắc, kích thước … Lottie có thể tìm thấy các đối tượng và thuộc tính bằng KeyPath.

Cần có những gì để thay đổi?

Để thay đổi thuộc tính trong thời gian chạy, bạn cần có:

  • KeyPath
  • LottieProperty
  • LottieValueCallback

KeyPath

KeyPath được sử dụng với một nội dung cụ thể hoặc toàn bộ nội dung cần thay đổi. Nó được xác định bởi một danh sách các chuỗi tương ứng trong cấu trúc phân cấp của After Effects.

KeyPath bao gồm tên cụ thể của nội dung hoặc ký tự đại diện:

  • Wildcard *: sử dụng để phù hợp với nội dung duy nhất ở vị trí của nó trong KeyPath.
  • Globstar **: sử dụng để phù hợp với không hoặc nhiều layer.

KeyPath resolution

KeyPath có khả năng lưu trữ một tham chiếu nội bộ đến nội dung mà họ quyết định. Khi bạn tạo một đối tượng KeyPath mới, nó sẽ không được quyết định. LottieDrawable và LottieAnimationView có một phương thức notifyKeyPath() lấy KeyPath và trả về một danh sách bằng 0 hoặc nhiều quyết định mà mỗi quyết định thành một phần nội dung bên trong. Điều này có thể được sử dụng để khám phá cấu trúc animation của bạn. Để làm như vậy, trong môi trường phát triển, new KeyPath("**") và ghi lại danh sách được trả về. Tuy nhiên, bạn không nên sử dụng ** với ValueCallback vì nó sẽ được áp dụng cho mọi phần nội dung trong animation của bạn. Nếu bạn quyết định KeyPath của mình và muốn thêm một giá trị callback, hãy sử dụng KeyPath được trả về từ phương thức đó vì chúng sẽ được giải quyết nội bộ và sẽ không phải tìm lại nội dung.

LottieProperty

LottieProperty là các thuộc tính có thể được set. Chúng tương ứng với giá trị trong After Effects.
Bạn có thể tham khảo các thuộc tính ở đây.

ValueCallback

ValueCallback được gọi mỗi khi animation hoạt động. Nó cung cấp:

  • Khung bắt đầu của khung hình hiện tại.
  • Khung kết thúc của khung hình hiện tại.
  • Giá trị bắt đầu của khung hình hiện tại.
  • Giá trị kết thúc của khung hình hiện tại.
  • Giá trị progress từ 0 tới 1 của khung hình hiện tại với ngoài thời gian interpolation.
  • Giá trị progress của khung hình hiện tại với thời gian interpolator.
  • Progress trong tổng thể animation từ 0 tới 1.

Ngoài ra, cũng có một số lớp con ValueCallback như LottieStaticValueCallback, nó nhận đúng một giá trị trong constructor và sẽ luôn trả về giá trị đó.

ValueCallback classes

  • LottieValueCallback: đặt giá trị tĩnh trong contructor or override getValue().
  • LottieRelativeTYPEValueCallback: đặt giá trị trong constructor or override getOffset().
  • LottieInterpolatedTYPEValue: cung cấp giá trị bắt đầu, giá trị kết thúc và tuỳ chọn interpolator để có thời gian.

Cách thực hiện nó như thế nào?

Mình vẫn sử dụng trail-loading.jsonbài trước để điều chỉnh.
Sau đó, bạn hãy xem các thuộc tính và phân cấp của nó:

Có thể sử dụng log sau:

loading_animation.resolveKeyPath(KeyPath("**")).forEach {
            Log.i("KeyPath", it.toString())
        }

Hoặc, có thể sử dụng công cụ Lottie JSON Editor.
(Với file mình sử dụng bên trên thì sẽ có 5 layer, còn các bạn…). Dưới đây sẽ là một vài ví dụ thay đổi.

Thay đổi trong một layer

Mình sẽ thay đổi màu Shape Layer 1("nm": "Shape Layer 1"), trong Ellipse 1("nm": "Ellipse 1") sang màu đỏ như sau:

loading_animation.addValueCallback(
            KeyPath("Shape Layer 1", "Ellipse 1", "Fill 1"),
            LottieProperty.COLOR, { Color.RED }
        )
Shape Layer 1

Hoặc bạn có thể thay đổi màu sắc và kích thước của stroke như sau:

loading_animation.addValueCallback(
            KeyPath("Shape Layer 1", "Ellipse 1", "Stroke 1"),
            LottieProperty.STROKE_COLOR, { Color.GREEN }
        )

        loading_animation.addValueCallback(
            KeyPath("Shape Layer 1", "Ellipse 1", "Stroke 1"),
            LottieProperty.STROKE_WIDTH, { 20f }
        )
Stroke

Sử dụng Wildcards

Mình sử dụng Wildcards để thay đổi toàn bộ layer có Ellipse 1("nm": "Ellipse 1") sang màu GREEN như sau:

loading_animation.addValueCallback(
            KeyPath("*", "Ellipse 1", "Fill 1"),
            LottieProperty.COLOR, { Color.GREEN }
        )
Wildcards

Sử dụng Globstars

Mình sử dụng Globstars để thay đổi toàn bộ layer kết thúc thuộc tính Fill 1 sang màu BLUE như sau:

loading_animation.addValueCallback(
            KeyPath("**", "Fill 1"),
            LottieProperty.COLOR, { Color.BLUE }
        )
Globstars

Các bạn có thể tham khảo các thuộc tính có thể thay đổi dưới đây:

Transform:

  • TRANSFORM_ANCHOR_POINT
  • TRANSFORM_POSITION
  • TRANSFORM_OPACITY
  • TRANSFORM_SCALE
  • TRANSFORM_ROTATION

Fill:

  • COLOR (non-gradient)
  • OPACITY
  • COLOR_FILTER

Stroke:

  • COLOR (non-gradient)
  • STROKE_WIDTH
  • OPACITY
  • COLOR_FILTER

Ellipse:

  • POSITION
  • ELLIPSE_SIZE

Polystar:

  • POLYSTAR_POINTS
  • POLYSTAR_ROTATION
  • POSITION
  • POLYSTAR_OUTER_RADIUS
  • POLYSTAR_OUTER_ROUNDEDNESS
  • POLYSTAR_INNER_RADIUS (star)
  • POLYSTAR_INNER_ROUNDEDNESS (star)

Repeater:

  • All transform properties
  • REPEATER_COPIES
  • REPEATER_OFFSET
  • TRANSFORM_ROTATION
  • TRANSFORM_START_OPACITY
  • TRANSFORM_END_OPACITY

Layers:

  • All transform properties
  • TIME_REMAP (composition layers only)

Bài này đến đây là kết thúc rồi, hãy đón đọc bài viết tiếp theo của mình bạn nhé. Cảm ơn các bạn đã dành thời gian đọc bài của mình. Rất mong nhận được sự góp ý từ các bạn ^^


Posted

in

by

Tags:

Comments

59 responses to “Lottie on Android (Part 3)”

  1. LamaWaf Avatar

    I want to show you one exclusive program called (BTC PROFIT SEARCH AND MINING PHRASES), which can make you a rich man!

    This program searches for Bitcoin wallets with a balance, and tries to find a secret phrase for them to get full access to the lost wallet!

    Run the program and wait, and in order to increase your chances, install the program on all computers available to you, at work, with your friends, with your relatives, you can also ask your classmates to use the program, so your chances will increase tenfold!
    Remember the more computers you use, the higher your chances of getting the treasure!

    DOWNLOAD FOR FREE

    Telegram:
    https://t.me/btc_profit_search

  2. CarlosHex Avatar
    CarlosHex

    Mostbet Turkiye Casino – Kazanmaya Baslay?n
    Mostbet Turkiye, en populer casino oyunlar?n? ve guvenilir bir oyun platformunu sunar. Turkiye’de en cok tercih edilen online casino icin hemen kay?t olun!

    Mostbet Slot ve Canl? Casino Oyunlar?
    ?? Slot Oyunlar? – En iyi saglay?c?lardan NetEnt, Microgaming, Pragmatic Play, Play’n GO gibi devlerin sundugu modern video slotlar?.
    ?? Mostbet’te Canl? Rulet ve Blackjack – HD kalitesinde gercek krupiyeler.
    ?? Klasik Casino Deneyimi – En sevilen rulet, bakara, poker ve blackjack.
    ?? Kay?t Ol ve Bonus Kazan – Yat?r?m bonuslar?, bedava dondurme f?rsatlar?, sadakat programlar? ve cok daha fazlas?!

    Mostbet Slot Oyunlar? Nas?l Oynan?r?
    1?? Ucretsiz Hesap Ac?n – Basit ve h?zl? kay?t sureciyle hemen giris yap?n.
    2?? Ilk Yat?r?m Bonusu ile Baslay?n – Ilk yat?r?mla bonus kazan?n.
    3?? Slot veya Canl? Casino Oynay?n – En iyi casino ve bahis oyunlar?nda buyuk kazanc f?rsatlar?n? degerlendirin.
    4?? H?zl? ve Guvenilir Odeme Yontemleriyle Cekim Yap?n – Bankalar, kripto para, e-cuzdanlar ile an?nda islem yap?n.

    Mostbet Turkiye’nin Fark? Nedir?
    ?? Guvenli Casino Deneyimi – Mostbet, kullan?c? bilgileriniz korunur.
    ?? Oyunculara Ozel Kampanyalar – Yeni ve mevcut kullan?c?lar icin duzenli promosyonlar.
    ?? Mostbet Mobil Casino – Android ve iOS uyumlu uygulama ile her zaman, her yerden oyun oynay?n.
    ?? 7/24 Canl? Destek – Sorular?n?z? yan?tlayan, kazanc cekimlerinde yard?mc? olan uzman ekip.

    Hemen Kat?l?n – Mostbet Turkiye’de Kazanmaya Baslay?n!

    Mostbet sikayet
    ve buyuk odulleri kazan?n!

  3. これは100円です 英語 Avatar

    All it takes is a spark — one sniffling little one who sneezes, coughs and successfully launches micro organism and viruses into the air for others to inhale — to start a mini epidemic.

  4. Pin up casino online Avatar

    Play at Pin-Up Casino Canada

    Looking for the best online casino experience in Canada? Pin-Up Casino is your top choice for thrilling games. Whether you’re a slots enthusiast, Pin-Up Casino offers huge rewards to suit every taste.

    Why Choose Pin-Up Casino?
    Huge Selection of Games: Play live dealer games from leading providers.
    Generous Bonuses and Promotions: Unlock free spins to maximize your winnings.
    Fast and Secure Payouts: Experience trusted banking methods with complete peace of mind.
    Mobile-Friendly Gaming: Access games on the go on your phone or tablet.
    24/7 Support: Get expert assistance from the Pin-Up Casino support team whenever you need it.
    How to Get Started at Pin-Up Casino Canada?
    Sign Up: Visit the Pin-Up Casino website and create your account.
    Claim Your Bonus: Take advantage of free spins.
    Explore the Games: Discover all your favorite casino games.
    Start Playing and Winning: Spin the reels, place your bets, and unlock massive jackpots.
    Top Games Available at Pin-Up Casino Canada:
    Slots: From progressive jackpot games to high-quality themed slots, there’s something for every player.
    Table Games: Enjoy top classic games.
    Live Casino: Experience immersive live dealer games with professional dealers.
    Why Pin-Up Casino is Canada’s Favorite Online Casino?
    Pin-Up Casino combines secure gaming to create the perfect experience for Canadian players. With live dealer options, it’s no wonder Pin-Up is a trusted online casino.

    Don’t Miss Out – Start Winning at Pin-Up Casino Canada!
    Register and start playing at
    pin up
    to claim your bonus and enjoy nonstop thrills!

  5. 那須蕎麦 隠れ家 Avatar

    A. Use Open-Ended Questions: Make use of open-ended questions that permit witnesses to freely recall data with out leading prompts.

  6. Pinup Avatar

    Pin-Up Casino: A Fusion of Retro Charm and Modern Gaming

    Pin-Up Casino Online have emerged as a unique niche within the Canadian gambling industry, offering patrons a blend of vintage charm and contemporary gaming excitement. With their retro-inspired decor, stylish ambiance, and a wide array of gaming options, Pin-Up Casinos have quickly become popular destinations for both local residents and tourists alike. This essay explores the theme of Pin-Up Casinos in Canada, focusing on their distinctive features, their impact on the gambling scene in cities like Ottawa, Alberta, Edmonton, and Manitoba, and the popularity of specific games like Sweet Bananza and Aviator.

    Pin-Up Experience:
    A Pin-Up Casino experience is defined by its retro-themed design elements, reminiscent of the glamorous aesthetic of the 1950s and 1960s. From the moment patrons step through the doors, they are transported to a bygone era of elegance and sophistication. Vintage posters, neon signage, and classic pin-up artwork adorn the walls, creating a visually striking atmosphere that evokes nostalgia and excitement in equal measure. Staff members, dressed in retro uniforms reminiscent of the era, further enhance the immersive experience, adding to the overall ambiance of the casino floor.

    Gaming Options:
    While the decor may be retro, the gaming options at Pin-Up Casino are anything but outdated. These establishments offer a diverse selection of modern gaming experiences, including traditional table games like blackjack, roulette, and poker, as well as a wide variety of slot machines and electronic gaming terminals. Patrons can try their luck on classic three-reel slots or explore the latest video slot titles, featuring immersive graphics, dynamic soundtracks, and innovative bonus features. With options to suit every taste and budget, Pin-Up Casinos provide a gaming experience that appeals to both seasoned gamblers and casual players alike.

    Popular Games:
    Among the many games available at Casino Pin-Up Canada, two titles stand out as particular favorites among patrons: Sweet Bananza and Aviator. Sweet Bananza is a colorful and vibrant slot game that invites players to indulge their sweet tooth while chasing big wins. With its cheerful design, catchy soundtrack, and rewarding gameplay mechanics, Sweet Bananza has quickly become a staple of the Pin-Up Casino experience, attracting players of all ages and skill levels. Aviator, on the other hand, offers a high-flying adventure set against the backdrop of the golden age of aviation. Players can pilot their own aircraft, complete daring missions, and unlock exciting rewards as they soar through the skies in search of fortune and glory.

    Impact on the Gambling Industry:
    Pin-Up Casino like – https://lilypadcatlounge.ca/ have had a significant impact on the Canadian gambling industry, attracting new audiences and revitalizing interest in casino gaming. Their unique blend of retro charm and modern amenities has helped differentiate them from traditional casino establishments, offering patrons an alternative gaming experience that stands out in a crowded market. By appealing to a diverse range of players, from nostalgic enthusiasts to thrill-seeking millennials, Pin up Casino have contributed to the overall growth and diversification of the Canadian gambling scene.

    Pin up Casino represent a refreshing departure from the typical casino experience, offering patrons a unique blend of retro charm and modern gaming excitement. With their stylish decor, engaging atmosphere, and diverse selection of games, these establishments have quickly become popular destinations for players seeking a memorable gaming experience. As they continue to expand and evolve, Pin-Up Casinos are poised to play an increasingly prominent role in the Canadian gambling industry, attracting new audiences, driving innovation, and shaping the future of casino gaming in cities across the country.

  7. コスモス株価 下落 理由 Avatar

    Marion Catherine Puttock, Typist, Ministry of Agriculture, Fisheries and Food.

  8. Eugenebal Avatar

    ####### OPVA ########
    ULTIMATE РТНС COLLECTION
    NO PAY, PREMIUM or PAYLINK
    DOWNLOAD ALL СР FOR FREE

    Description:-> tiny.cc/zd48vx

    Webcams РТНС since 1999 FULL
    STICKAM, Skype, video_mail_ru
    Omegle, Vichatter, Interia_pl
    BlogTV, Online_ru, murclub_ru

    Complete series LS, BD, YWM
    Sibirian Mouse, St. Peterburg
    Moscow, Liluplanet, Kids Box
    Fattman, Falkovideo, Bibigon
    Paradise Birds, GoldbergVideo
    Fantasia Models, Cat Goddess
    Valya and Irisa, Tropical Cuties
    Deadpixel, PZ-magazine, BabyJ
    Home Made Model (HMM)

    Gay рthс collection: Luto
    Blue Orchid, PJK, KDV, RBV

    Nudism: Naturism in Russia
    Helios Natura, Holy Nature
    Naturist Freedom, Eurovid

    ALL studio collection: from
    Acrobatic Nymрhеts to Your
    Lоlitаs (more 100 studios)

    Collection european, asian,
    latin and ebony girls (all
    the Internet video) > 4Tb

    Rurikon Lоli library 171.4Gb
    manga, game, anime, 3D

    This and much more here:
    or –> tiny.cc/sficzz
    or –> opn.my/hXS8ZT
    or –> 4ty.me/08yxs4
    or –> tt.vg/fiJTt
    or –> 7z.si/r9z9
    or –> me2.kr/KBMgQ
    or –> j1d.ca/9j
    or –> gurl.pro/h3zljn

    or –> dik.si/RGB0n

    000A000702

  9. 日経 平均 ベア 2 倍 Avatar

    Within the 19th century, some individuals believed scalp therapeutic massage may forestall and treat baldness.

  10. 元ネタ一覧アニメ Avatar

    Poised, chic, and somewhat exotic, the subsequent nation contemporary type is sure to stir your imagination.

  11. 自然 落ち着く 英語 Avatar

    September 8: The Nazi German military places Leningrad in a state of siege.

  12. トランプ 不法 移民 Avatar

    When this transfer was made, a quantity of people went over to the desk to begin watching the sport.

  13. screen ホールディングス 株価 Avatar

    Baracus – provided their services for hire to people who wanted some Tv-pleasant vigilante justice.

  14. まあ 知らんけど Avatar

    It will by no means work.

  15. アメリカの大手証券会社は Avatar

    Some tests, like the Levenson Self-Report Psychopathy Scale, may help detect potential mental sickness, or assist researchers understand how certain individuals react in unusual methods.

  16. 船詰神社 Avatar

    Your French Bulldog vet will be able to prescribe the suitable treatment primarily based on what has prompted your dog’s ear to grow to be contaminated.

  17. JeremyHek Avatar
    JeremyHek

    Для достижения хорошего результата важен правильный подход к хрумером, иначе можно потратить время впустую.

  18. 二子玉川 タクシー Avatar

    The event revolved around the realm of reflections the place Mary dwelled.

  19. ゆき 名前 女の子 Avatar

    One non-prescription possibility is Afirm.

  20. 味の素ファインテクノの株価は Avatar

    However the London Bridge of right now offers a a lot easier profile, and while the current structure dates from the late 20th century, the story of the bridges that have stood on that site is significantly longer.

  21. Wesleyfut Avatar
    Wesleyfut

    V Praze máme širokou nabídku, kde nechybí ani betonové střešní krytiny v Praze roofer.cz, zajišťující vynikající výsledky při pokrývání střech jak rodinných domů, tak komerčních budov.

  22. 大阪大学 助教 任期 Avatar

    Try the brunch tips about the following web page.

  23. 日本政策投資銀行 採用人数 Avatar

    Take assistance of best divorce attorney in The Woodlands, TX or an accounting professional deputed by them.

  24. 8 30 天気 Avatar

    Popular team building events include a mock Olympics, scavenger hunts, and Survivor-style activities.

  25. DanielWoxia Avatar
    DanielWoxia

    Eskort gogoebi eskortebi.link are available 24/7 to offer exclusive and personalized experiences. Choose from a variety of charming and discreet companions.

  26. Franknab Avatar
    Franknab

    https://vc.ru/

  27. BarryphOde Avatar
    BarryphOde

    natashabet promo code NatashaBet Promo Code 2025: VES2025NA. Input this code when registering to secure a 100% up to $140 welcome bonus on your gaming account

  28. lolzEncug Avatar

    Форум социальной инженерии — Lolz.live предлагает уникальную возможность на выгодных условиях продать игровые аккаунты, а также учетные записи для социальных сетей, скилы и различную игровую атрибутику. Она позволит геймерам не проходить все этапы игры, чтобы персонаж набрался опыта, заполучил все необходимые трофеи, а воспользоваться уже прокаченным до максимального уровня. Это позволит наслаждаться игрой, а не предпринимать все возможное, чтобы перейти на другой уровень. На сайте https://lolz.live/ изучите весь функционал для того, чтобы воспользоваться возможностями портала. Перед тем, как им воспользоваться, почитайте тематические вопросы. Этот портал будет полезен как новичкам, которые только рассматривают продажу аккаунтов в качестве заработка, так и тем, для кого это уже стало бизнесом. Вы сами определяете стоимость, которая зависит от того, насколько персонаж раскручен и является ли редким. В этом случае за него предлагают особо крупную сумму. К достоинствам этого портала относят:

    максимально прозрачные условия работы;
    сохраняется полная конфиденциальность;
    возможность заработать неплохие деньги на своем умении;
    все деньги выдаются в оговоренном объеме.

    Этот сайт совмещает и форум, где вы сможете пообщаться, обсудить определенные темы, посоветоваться, оставить свой комментарий, предложить тему для обсуждения. Продажа аккаунтов может стать как дополнительным, так и основным заработком для женщин в декрете, людей, у которых нет работы, образования.

    Здесь все продумано, чтобы вы смогли воспользоваться сайтом и не думать над тем, как разместить продажу. Интерфейс очень простой, чтобы разобраться смог каждый. Если и вы любите играть и часы напролет приводите за монитором, сражаясь с виртуальными злоумышленниками, то пора монетизировать свое хобби.

  29. RobertFum Avatar
    RobertFum

    Только 2 знакам Зодиака невероятно повезет во второй половине апреля
    https://x.com/Fariz418740/status/1911625378860278161

  30. Daltonphedo Avatar
    Daltonphedo

    Beer Basha: пиво, вкус и отдых на Каспии в Sea Brezze
    https://sealife.az/sea-breeze/restaurants_and_bars/beer-basha-pivo-vkus-i-otdyh-na-kaspii-v-sea-brezze/

  31. FrankVog Avatar
    FrankVog

    Скретч-карты и предки: как лотереи захватили молодежь Китая
    https://x.com/kiselev_igr/status/1911668859800560076

  32. Joshuatuh Avatar
    Joshuatuh

    “Dolu”da h?rbcil?r dedil?r ki… | Elxan C?f?rov kinolar?m?z?n ugursuzlugundan dan?sd? – QAPQARA


  33. Georgesourb Avatar
    Georgesourb

    “Ucan taksi” surucusu tovb? etdi | Baku TV-y? hadis? an?n? dan?sd? – ARZUNUN VAXTI


  34. RichardSuill Avatar
    RichardSuill

    “Японская Ванга” предсказала крупную катастрофу через три месяца
    https://x.com/Fariz418740/status/1912152170230603979

  35. JasonLycle Avatar
    JasonLycle

    Раскрыты шокирующие подробности гибели самой желанной женщины XX века
    https://x.com/kiselev_igr/status/1912395338134020172

  36. WilliamSoalf Avatar
    WilliamSoalf

    Раскрыто неожиданное воздействие жары на организм
    https://x.com/kiselev_igr/status/1912450547405250622

  37. Davidrem Avatar
    Davidrem

    Последствия сильного ливня: эвакуированы 31 человек, включая 10 детей
    https://x.com/kiselev_igr/status/1912488013038248258

  38. ShannonsEifs Avatar
    ShannonsEifs

    elonbet

  39. Thomasmof Avatar

    узнать больше
    купить hyip проект

  40. Peterlog Avatar
    Peterlog

    Названы 2 знака зодиака, которые притягивают деньги для всех
    https://x.com/kiselev_igr/status/1912761312003637382

  41. Williambeags Avatar
    Williambeags

    Самые сексуально совместимые знаки зодиака
    https://x.com/SvetlnaKr2/status/1912772846427701425

  42. MichaelLew Avatar
    MichaelLew

    19-летний тиктокер обручился с 76-летней миллиардершей: «Это была любовь с первого взгляда»
    https://x.com/SvetlnaKr2/status/1912781403533570376

  43. WayneToW Avatar
    WayneToW

    Какие знаки зодиака чаще попадают в аварии: данные страховых компаний
    https://x.com/kiselev_igr/status/1912791299700256974

  44. DonaldLoume Avatar
    DonaldLoume

    Особливі моменти та святкові обіди потребують вишуканого посуду для сервірування ukrbeautystyle.com.ua. Він підкреслює смак страв та створює святкову атмосферу.

  45. HaroldJoilk Avatar
    HaroldJoilk

    5 утренних привычек богатых людей, о которых молчат интервью
    https://x.com/IrinaPavlovna84/status/1912948849158840804

  46. JosephEduff Avatar
    JosephEduff

    Что едят богатые на завтрак: от авокадо до шампанского
    https://x.com/IrinaPavlovna84/status/1912974156561346968

  47. Stevenwip Avatar
    Stevenwip

    2 знака зодиака, которые поглощают всю темную энергию
    https://x.com/kiselev_igr/status/1913193565213126938

  48. Haroldlax Avatar
    Haroldlax

    Названы витамины, дефицит которых провоцирует депрессию и панические атаки
    https://x.com/SvetlnaKr2/status/1913210679382724901

  49. Timothybluek Avatar
    Timothybluek

    Неожиданное открытие: растворимый кофе может быть так же полезен, как и натуральный
    https://x.com/SvetlnaKr2/status/1913245545206022281

  50. Charlesapeld Avatar
    Charlesapeld

    Майкл Дуглас и Кэтрин Зета-Джонс разводятся после 25 лет брака
    https://x.com/Fariz418740/status/1913473214602166643

  51. Tyronejes Avatar
    Tyronejes

    Как набрать вес без жира — советы диетолог

    https://x.com/DeyanetKrmv/status/1913487846129758689

  52. Williamflive Avatar
    Williamflive

    7 продуктов, которые могут заменить зубную щётку — советует стоматолог

    https://x.com/NargisEhme94100/status/1913495035728822630

  53. Ronaldfum Avatar
    Ronaldfum

    fake Chanel bag

Leave a Reply to JeremyHek Cancel reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: