Intereting Posts
Как создать приложение для Android с внешними библиотеками с помощью ant? Как построить ffmpeg в приложении для Android? Как правильно инициировать многоэкранную контекстную панель действий для ListFragment (с проблемами) Виджеты, настроенные с помощью android: configure будут получать onUpdate, даже если конфигурация не завершена Android – отправлено плохое уведомление – не удалось расширить RemoteViews для: StatusBarNotification Виджет не обновляется после изменений конфигурации Android NDK Mutex Android Softkeyboard вводит числовое значение в edittext очень медленно Как сгенерировать отчеты об испытаниях JUnit для android для jenkins Запустить Android-приложение с конкретной деятельностью Является ли это Runnable безопасным от утечки памяти? Как я могу ограничить dragzone для представления в android? Как построить i686-linux-android-gfortran для android-ndk8b (x86 arch Android)? Android – Изменить тему приложения onClick Расширение класса приложений и надлежащей практики

Простой вид калибра, такой как speedmeter in android?

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

Введите описание изображения здесь

Поэтому я могу показать заданное значение, например, speedmeter. Например, если мое значение textView равно 1300, то рядом с текстовым представлением я хочу, чтобы эта пользовательская анимация просмотра метра понравилась!

Возможно? Любой существующий пример кода?

    Другой, который я нашел в Evelina Vrabie's blog , использовал его и отлично работал!

    Посмотрите на Evelina Vrabie's GitHub . Он имеет калибровочную библиотеку и некоторые образцы для взаимодействия.

    Большое спасибо владельцу Evelina Vrabie!


    Введите описание изображения здесь

    Однако он не работает с XHDPI / Few версиями устройств Android (выше 4). Проблема – это текст в виде калибра.

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

    CustomGauge

    Введите описание изображения здесь

    Все другие калибры, которые вы рекомендовали, имеют ошибки и не работают нормально на Kitkat и Lollipop. Здесь также нет платформы Android Studio и gradle.

    Вот git repo для более поздней версии, обновленной для Lollipop, которую вы можете использовать с Gradle:

    Введите описание изображения здесь

    После того, как вы включите библиотеку в свой проект, добавьте gaugelibrary в xml-макет своей деятельности:

     <io.sule.gaugelibrary.GaugeView android:id="@+id/gauge_view" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff" gauge:showOuterShadow="false" gauge:showOuterRim="false" gauge:showInnerRim="false" gauge:needleWidth="0.010" gauge:needleHeight="0.40" gauge:scaleStartValue="0" gauge:scaleEndValue="100" /> 

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

     package io.sule.testapplication; import android.app.Activity; import android.os.Bundle; import android.os.CountDownTimer; import android.view.Menu; import android.view.MenuItem; import java.util.Random; import io.sule.gaugelibrary.GaugeView; public class MainActivity extends Activity { private GaugeView mGaugeView; private final Random RAND = new Random(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mGaugeView = (GaugeView) findViewById(R.id.gauge_view); mTimer.start(); } private final CountDownTimer mTimer = new CountDownTimer(30000, 1000) { @Override public void onTick(final long millisUntilFinished) { mGaugeView.setTargetValue(RAND.nextInt(101)); } @Override public void onFinish() {} }; } 

    Это создаст экземпляр иглы и сделает ее анимацией, перемещаясь к случайным значениям.

    Я не знаю, поможет ли поздний ответ или нет. Я также пришел к той же ситуации, когда я хочу использовать датчик для визуализации данных, поскольку калибр не задан как виджет в андроиде, как энтузиаст, который я посещал для библиотек, таких как выше, которые можно найти через различные ссылки в Интернете, хотя это Был весьма полезен (благодаря замечательным авторам этого). Мне трудно представить себе ситуацию во время определенных ситуаций, поэтому другое решение, которое я сделал для моего приложения, – это интегрировать JavaScript-инструменты в мое приложение для Android. Вы можете сделать это на следующих шагах

    1. Создайте папку с ресурсами в нашем проекте – посмотрите эту ссылку, и вы увидите, как создать папку с активами, если кто-то не знает об этом.
    2. Далее у вас есть дизайн html-страницы, как выглядит ваша страница sholud, например eg-header, no.of guages ​​и т. Д. … и поместить ее в ресурс папки.
    3. Есть много сайтов, которые предоставляют такие способы, как « Это один сайт», или вы можете просматривать другие сайты и принимать все, что вам нравится … !! Возьмите все, включая файлы .js, и поместите их в папку с активами.
    4. Android предоставляет класс для обработки веб-браузера под названием «WebViewClient», который вы можете просмотреть больше, чтобы узнать больше об этом в Интернете
    5. Это пример кода для просмотра содержимого webview.

      Web = (WebView) findViewById (R.id.webview01); ProgressBar = (ProgressBar) findViewById (R.id.progressBar1);

       web.setWebViewClient(new myWebClient()); web.getSettings().setJavaScriptEnabled(true); web.post(new Runnable() { @Override public void run() { web.loadUrl("file:///android_asset/fonts/guage.html"); } }); 

    Вышеприведенный для загрузки html и javscript.

      public class myWebClient extends WebViewClient { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { // TODO Auto-generated method stub super.onPageStarted(view, url, favicon); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub progressBar.setVisibility(View.VISIBLE); view.loadUrl(url); return true; } @Override public void onPageFinished(WebView view, String url) { // TODO Auto-generated method stub super.onPageFinished(view, url); progressBar.setVisibility(View.GONE); } } 

    Это класс webview

    1. Вы также можете отправлять данные с активности на страницу html .. См. Эту ссылку

    Просьба прочитать все, исправления приветствуются .. !!