Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Разместите свой проект бесплатно и начните получать предложения от фрилансеров-исполнителей уже спустя минуты после публикации!

Реализовать виджет сторисов как в Телеграм


  1. 2022    35  2   2
    3 дня2000 UAH

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

  2. 1 ставка скрыта
  • Олександр Некрутенко
    5 октября 2024, 11:29 |

    activity_main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <androidx.constraintlayout.motion.widget.MotionLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/motionLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layoutDescription="@xml/activity_main_scene">
    
        <!-- Внутрішній MotionLayout для анімацій всередині "Toolbar" -->
        <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="56dp"
            android:background="?colorPrimary"/>
    
        <ImageView
            android:id="@+id/stories_1"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:src="@drawable/ic_stor_1"/>
    
        <ImageView
            android:id="@+id/stories_2"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:src="@drawable/ic_stor_2" />
    
        <!-- Нижня частина інтерфейсу (можливо, FrameLayout або RecyclerView) -->
        <FrameLayout
            android:id="@+id/frameLay"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:background="@android:color/transparent"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintTop_toBottomOf="@id/toolbar"
            />
    
    </androidx.constraintlayout.motion.widget.MotionLayout>
  • Олександр Некрутенко
    5 октября 2024, 11:30 |
    activity_main_scene.xml
    <?xml version="1.0" encoding="utf-8"?>
    <MotionScene xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:motion="http://schemas.android.com/tools">
    
        <Transition
            android:id="@+id/default_transition"
            app:constraintSetEnd="@+id/start"
            app:constraintSetStart="@+id/end"
            app:duration="300">
    
            <OnSwipe
                motion:dragDirection="dragUp"
                motion:maxAcceleration="200"
                motion:touchRegionId="@id/frameLay" />
        </Transition>
    
        <ConstraintSet android:id="@+id/start">
            <!-- Ваші початкові налаштування -->
            <Constraint
                android:id="@+id/toolbar"
                android:layout_width="0dp"
                android:layout_height="56dp"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />
    
            <Constraint
                android:id="@+id/stories_1"
                android:layout_width="32dp"
                android:layout_height="32dp"
                android:layout_marginEnd="32dp"
                app:layout_constraintEnd_toEndOf="@id/toolbar"
                app:layout_constraintStart_toStartOf="@+id/toolbar"
                app:layout_constraintTop_toTopOf="@+id/toolbar"
                app:layout_constraintBottom_toBottomOf="@+id/toolbar"/>
    
            <Constraint
                android:id="@+id/stories_2"
                android:layout_width="32dp"
                android:layout_height="32dp"
                app:layout_constraintTop_toTopOf="@+id/toolbar"
                app:layout_constraintBottom_toBottomOf="@+id/toolbar"
                app:layout_constraintStart_toEndOf="@+id/stories_1"
                android:layout_marginStart="-16dp"/>
        </ConstraintSet>
    
        <ConstraintSet android:id="@+id/end">
            <!-- Ваші кінцеві налаштування -->
            <Constraint
                android:id="@+id/toolbar"
                android:layout_width="0dp"
                android:layout_height="156dp"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />
    
            <Constraint
                android:id="@+id/stories_1"
                android:layout_width="32dp"
                android:layout_height="32dp"
                android:layout_marginEnd="32dp"
                app:layout_constraintEnd_toEndOf="@id/toolbar"
                app:layout_constraintStart_toStartOf="@+id/toolbar"
                app:layout_constraintTop_toTopOf="@+id/toolbar"
                app:layout_constraintBottom_toBottomOf="@+id/toolbar"/>
    
            <Constraint
                android:id="@+id/stories_2"
                android:layout_width="32dp"
                android:layout_height="32dp"
                app:layout_constraintTop_toTopOf="@+id/toolbar"
                app:layout_constraintBottom_toBottomOf="@+id/toolbar"
                android:layout_marginStart="16dp"
                app:layout_constraintStart_toEndOf="@+id/stories_1"/>
        </ConstraintSet>
    
    </MotionScene>
  • Олександр Некрутенко
    5 октября 2024, 11:30 |
    package com.dimonbugor.motionlayoutapp;
    
    import android.os.Bundle;
    
    import androidx.activity.EdgeToEdge;
    import androidx.appcompat.app.AppCompatActivity;
    import androidx.constraintlayout.motion.widget.MotionLayout;
    import androidx.core.graphics.Insets;
    import androidx.core.view.ViewCompat;
    import androidx.core.view.WindowInsetsCompat;
    
    import com.dimonbugor.motionlayoutapp.databinding.ActivityMainBinding;
    
    public class MainActivity extends AppCompatActivity {
    
        private ActivityMainBinding binding;
    
        private MotionLayout outerMotionLayout;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    
            binding = ActivityMainBinding.inflate(getLayoutInflater());
            setContentView(binding.getRoot());
    
            outerMotionLayout = binding.motionLayout;
            outerMotionLayout.setProgress(1);
    
            // Додаємо TransitionListener до зовнішнього MotionLayout
            outerMotionLayout.setTransitionListener(new MotionLayout.TransitionListener() {
                @Override
                public void onTransitionStarted(MotionLayout motionLayout, int startId, int endId) {
                }
    
                @Override
                public void onTransitionChange(MotionLayout motionLayout, int startId, int endId, float progress) {
                }
    
                @Override
                public void onTransitionCompleted(MotionLayout motionLayout, int currentId) {
                }
    
                @Override
                public void onTransitionTrigger(MotionLayout motionLayout, int triggerId, boolean positive, float progress) {
                    // Не використовується в даному випадку
                }
            });
        }
    }

Актуальные фриланс-проекты в категории Разработка под Android

Нужен человек, который сейчас физически в Японии

Нужно протестировать открытие ссылки и записать экран смартфона. Ничего сложного. Любой сможет это сделать.

Разработка под AndroidТестирование и QA ∙ 2 дня 7 часов назад ∙ 3 ставки

Скрипт для модификации APK

У меня есть скрипт под старые версии APK Minecraft, который позволял делать версию игры с более меньшим весом за счет того, что там удалялась музыка. Также, скрипт делал клон Minecraft (чтобы можно было иметь две игры майнкрафт на своем устройстве...), а также во вкладку…

JavaРазработка под Android ∙ 2 дня 17 часов назад ∙ 12 ставок

Необходимо разработать мобильное приложение для Android и iOS

Необходимо разработать мобильное приложение для Android и iOS, которое будет работать как мессенджер с нашим AI через готовый Backend и API.Функционал: авторизация; список AI-ассистентов; чат; отправка и получение сообщений; поддержка WebSockets (диалог в реальном времени);…

Разработка под AndroidРазработка под iOS (iPhone и iPad) ∙ 4 дня 3 часа назад ∙ 43 ставки

Трансформация сайта intebwio на платформы: android, ios, windows, linux 5000$

224 554 UAH

Привет! Я ищу опытного программиста, команду или агентстводля комплексного переноса моей инновационной веб-платформы Intebwio напосвященные приложения для систем: Android, iOS, Windows и Linux.О продукте: Intebwio — это основанный на искусственном интеллектебраузер/поисковик…

Разработка под AndroidРазработка под iOS (iPhone и iPad) ∙ 4 дня 5 часов назад ∙ 19 ставок

Разработчик Ton Blockchain 10000 $

449 215 UAH

Здравствуйте! Я ищу фрилансера-разработчика TON для [краткосрочного / долгосрочного] проекта. Мне нужен кто-то, кто может помочь мне с [конкретно укажите, что вам нужно, например, написание смарт-контракта для стейкинга / подключение фронтенда к TonConnect / создание токена].…

Разработка под Android ∙ 4 дня 12 часов назад ∙ 15 ставок

Заказчик
Omuradil Sydykov
Украина Днепр  10  0
Проект опубликован
1 год назад
61 просмотр