1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/YangsBryant-ScaleProgressView

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 7.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 16.03.2025 18:31 2e50f8f

ScaleProgressView

Многомерная шкала прогресса

Изображение

Введение модуля

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://www.jitpack.io' }
    }
}
implementation 'com.github.YangsBryant:ScaleProgressView:1.0.8'

Основной код

public class MainActivity extends AppCompatActivity {

    ScaleProgressView scaleProgressView;
    Button button01, button02, button03;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final int[] scalePart = new int[]{15, 23, 30, 35};
        final int[] scaleColor = new int[]{R.color.color06CAAC, R.color.colorFF8F26, R.color.color06CAAC};

        final int[] scalePart2 = new int[]{8, 10, 11, 1, 2, 3};
        final int[] scaleColor2 = new int[]{R.color.colorFF8F26, R.color.color06CAAC, R.color.color06CAAC, R.color.colorFF8F26, R.color.color06CAAC};

        final int[] scalePart3 = new int[]{27, 28, 30, 1, 2};
        final int[] scaleColor3 = new int[]{R.color.color06CAAC, R.color.color06CAAC, R.color.color06CAAC, R.color.colorFF8F26};

        scaleProgressView = findViewById(R.id.scaleProgressView);
        scaleProgressView.setScalePart(scalePart)
                .setScaleColor(scaleColor)
                .setClipPos(26)
                .setUnit("°C")
                .isSpace(true);
    }
}
``````markdown
        button01 = findViewById(R.id.button01);
         button02 = findViewById(R.id.button02);
         button03 = findViewById(R.id.button03);
     }
 }
 
    button01.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            scaleProgressView.setScalePart(scalePart)
                    .setScaleColor(scaleColor)
                    .setClipPos(26)
                    .setClipText("26°C")
                    .setUnit("°C")
                    .setScaleInsideSize(0)
                    .setScaleDeviationPos(0)
                    .setTextColor(R.color.colorPrimary)
                    .setClipColor(R.color.colorPrimary)
                    .isSpace(true)
                    .setTimeMode(-1)
                    .invalidate();
        }
    });
    button02.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            scaleProgressView.setScalePart(scalePart2)
                    .setScaleColor(scaleColor2)
                    .setClipPos(10)
                    .setClipText("10/04日")
                    .setUnit("月")
                    .setScaleInsideSize(30)
                    .setScaleDeviationPos(4)
                    .setTextColor(R.color.colorPrimary)
                    .setClipColor(R.color.colorPrimary)
                    .isSpace(true)
                    .setTimeMode(1)
                    .invalidate();
        }
    });
    button03.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            scaleProgressView.setScalePart(scalePart3)
                    .setScaleColor(scaleColor3)
                    .setClipPos(30)
                    .setClipText("XX月30号")
                    .setUnit("号")
                    .setTextColor(R.color.colorPrimary)
                    .setClipColor(R.color.colorPrimary)
                    .isSpace(true)
                    .setTimeMode(0)
                    .invalidate();
        }
    });
 }

}

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout>
```ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     tools:context=".MainActivity">    <com.bryant.scaleprogresslibrary.ScaleProgressView
        android:id="@+id/scaleProgressView"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        android:layout_margin="20dp"
        />

    <Button
        android:id="@+id/button01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@+id/scaleProgressView"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginLeft="25dp"
        android:text="Датасет 1"
     />

    <Button
        android:id="@+id/button02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@+id/scaleProgressView"
        app:layout_constraintLeft_toRightOf="@+id/button01"
        android:layout_marginLeft="50dp"
        android:text="Датасет 2"
        />

    <Button
        android:id="@+id/button03"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@+id/scaleProgressView"
        app:layout_constraintLeft_toRightOf="@+id/button02"
        android:layout_marginLeft="50dp"
        android:text="Датасет 3"
        />
</android.support.constraint.ConstraintLayout>

## Полный список свойств ScaleProgressViewМетод | Описание
------|----------
setScalePart(int[] scalePart) | Устанавливает значения делений
setScaleColor(int[] scaleColor) | Устанавливает цвета для каждого сегмента делений
setUnit(String unit) | Устанавливает единицы измерения для делений
setTextColor(int textColor) | Устанавливает цвет текста для делений
setEndsPadding(int endsPadding) | Устанавливает отступы для текста в начале и конце
setScaleHeight(int scaleHeight) | Устанавливает высоту шкалы делений
isSpace(boolean bl) | Отображение промежутков между делениями
setScaleInsideSize(int size) | Устанавливает количество сегментов внутри сегмента, где находится указатель
setScaleDeviationPos(int size) | Устанавливает положение отклонения указателя внутри сегмента
setClipPos(int clipPos) | Устанавливает позицию указателя внутри сегмента
setClipText(String clipText) | Устанавливает текст для указателя
setClipColor(int clipColor) | Устанавливает цвет для указателя
isClip(boolean bl) | Отображение указателя
setTimeMode(int timeMode) | Включение режима времени 0: дни 1: месяцы -1: выключено
setClipPaddingTop(int clipPaddingTop) | Устанавливает вертикальное расстояние сверху до указателя

## Контактный QQ: 961606042

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/YangsBryant-ScaleProgressView.git
git@api.gitlife.ru:oschina-mirror/YangsBryant-ScaleProgressView.git
oschina-mirror
YangsBryant-ScaleProgressView
YangsBryant-ScaleProgressView
master