Динамический спидометр, датчик для Android. потрясающая , мощная и разнообразная форма ⚡, вы можете менять (цвета, ширину полосы, форму, текст, шрифт ... все !!), эта библиотека также предназначена для создания игр с accelerate
и decelerate
, см. проект на GitHub.
Размер библиотеки всего ~48 КБ.
Скачать демо-версию в Google Play:
Спидометры...
Датчики...
Этот проект нуждается в вас! Если вы хотите поддержать этот проект, создателя этого проекта или постоянное обслуживание этого проекта, не стесняйтесь сделать пожертвование. Ваше пожертвование очень ценно. Спасибо!
SpeedView теперь доступен в Jetpack Compose! Проверьте репозиторий спидометра для получения дополнительной информации.
Начиная с версии 1.5.4
эта библиотека залита на mavenCentral
, старые версии были на jcenter
. Для работы с этой библиотекой вам необходим Kotlin
версии 1.5.20
или выше.
Сначала добавьте Kotlin в свой проект на уровне проекта build.gradle
:
buildscript {
ext . kotlin_version = ' 1.5.31 '
dependencies {
.. .
classpath " org.jetbrains.kotlin:kotlin-gradle-plugin: $k otlin_version "
}
}
.. .
allprojects {
repositories {
.. .
mavenCentral()
}
}
Затем добавьте эту строку на уровень модуля приложения build.gradle
:
apply plugin : ' kotlin-android '
.. .
dependencies {
implementation ' com.github.anastr:speedviewlib:1.6.1 '
}
Для знатока
<dependency>
<groupId>com.github.anastr</groupId>
<artifactId>speedviewlib</artifactId>
<version>1.6.1</version>
<type>pom</type>
</dependency>
Начните работу с библиотекой SpeedView .
Выберите один из спидометров и датчиков и добавьте его в свой Layout.xml
, здесь мы используем SpeedView .
< com .github.anastr.speedviewlib.SpeedView
android : id = " @+id/speedView "
android : layout_width = " wrap_content "
android : layout_height = " wrap_content " />
Для всех спидометров и датчиков этот простой метод плавного изменения скорости:
SpeedView speedometer = findViewById( R .id.speedView)
// move to 50 Km/s
speedometer.speedTo( 50 )
По умолчанию продолжительность изменения скорости между последней скоростью и новой составляет 2000 ms
.
Вы можете передать свою продолжительность этим методом:
// move to 50 Km/s with Duration = 4 sec
speedometer.speedTo( 50 , 4000 )
Индикатор автоматически перемещается вокруг текущей скорости, чтобы добавить реальности спидометру из-за Tremble. Вы можете остановить его с помощью атрибута app:sv_withTremble="false"
или вызвать это в своем коде:
speedometer.withTremble = false
Для получения дополнительной информации о наиболее важных методах см. раздел «Начало работы — Wiki для всех спидометров и датчиков» .
А также вы можете посмотреть Расширенное использование в Usage - Wiki.
Более продвинутые функции:
Имя | Скриншот | XML-макет |
---|---|---|
1. SpeedView — Wiki | < com.github.anastr.speedviewlib.SpeedView android:id="@+id/speedView" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
2. DeluxeSpeedView — Wiki | < com.github.anastr.speedviewlib.DeluxeSpeedView android:id="@+id/deluxeSpeedView" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
3. AwesomeSpeedometer — Wiki | < com.github.anastr.speedviewlib.AwesomeSpeedometer android:id="@+id/awesomeSpeedometer" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
4. РэйСпидометр — Wiki | < com.github.anastr.speedviewlib.RaySpeedometer android:id="@+id/raySpeedometer" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
5. УказательСпидометр — Wiki | < com.github.anastr.speedviewlib.PointerSpeedometer android:id="@+id/pointerSpeedometer" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
6. Трубный спидометр — Wiki | < com.github.anastr.speedviewlib.TubeSpeedometer android:id="@+id/tubeSpeedometer" Android:layout_width="wrap_content" android:layout_height="wrap_content" /> | |
7. ИзображениеСпидометр — Wiki | < com.github.anastr.speedviewlib.ImageSpeedometer android:id="@+id/imageSpeedometer" Android:layout_width="wrap_content" Android:layout_height="wrap_content" приложение:sv_image="@drawable/your_image" /> | |
8. ProgressiveGauge — Wiki | < com.github.anastr.speedviewlib.ProgressiveGauge android:id="@+id/gauge" Android:layout_width="match_parent" android:layout_height="wrap_content" /> | |
9. ImageLinearGauge — Wiki | < com.github.anastr.speedviewlib.ImageLinearGauge android:id="@+id/gauge" Android:layout_width="wrap_content" Android:layout_height="wrap_content" приложение: sv_image="@drawable/fire" /> |
Ваш pull request
всегда приветствуется. Пожалуйста, ознакомьтесь с правилами участия, чтобы внести полезные изменения.
Copyright 2016 Anas Altair
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.