Форум программистов, компьютерный форум, киберфорум
Наши страницы

Canvas circle radius на всех экранах - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android SQLite и краш активности http://www.cyberforum.ru/android-dev/thread1643868.html
Всем привет, подскажите в чем дело. Есть класс public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { private GoogleMap mMap; @Override protected...
Программирование Android Как подогнать ряд кнопок в TableLayout под ширину экрана? День добрый. Пишу игру простенькую Крестики-нолики. Поле состоит квадрата 3x3 из Кнопок, которые генерируются в коде. Размер кнопки устанавливается при создании. button.setWidth(100);... http://www.cyberforum.ru/android-dev/thread1643857.html
Программирование Android GPS координаты
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); //Метод получения контактных данных ...
Ругается на FragmentTransaction Программирование Android
Пишу Bluetooth-чат. Пример был взят с GoogleDev. Студия ругается мол символ неизвестный, хотя библиотеку подключил, в чем проблема? p.s. Фрагментами никогда не занимался p.s.s. Часть кода,...
Программирование Android Локализация приложения http://www.cyberforum.ru/android-dev/thread1643446.html
Добрый вечер! Интересует следующий вопрос, в андроид локализация приложения происходит в автоматическом режиме в зависимости от установленного языка на устройстве, но можно ли программно управлять...
Программирование Android Dx.bat выдает ошибку При вызове: drStudio>call C:\Users\user\AppData\Local\Android\sdk\build-tools\23.0.1\dx.bat --dex --output=C:\AndrStudio\bin\classes.dex C:\AndrStudio\obj Выдается ошибка: UNEXPECTED... подробнее

Показать сообщение отдельно
Spelcrawler
531 / 501 / 111
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
22.01.2016, 16:56
dajver, можно радиус точно так же расчитать, как для слайсов
Java
1
2
3
4
5
private float getCircleRadius(float percent) {
    float invisibleRadius = radius / 4; //Это радиус бОльшего центрального круга, можно его вынести в поле
    float visibleRadius = radius - invisibleRadius;
    return invisibleRadius + visibleRadius * circlePercent;
}
И рисовать все в цикле.
Java
1
2
3
4
5
6
7
8
int circlesCount = 9;
float percent = 0f;
float percentStep = 1f / (float) circlesCount;
 
for (int i = 0; i < circlesCount; i++) {
    percent += percentStep;
    canvas.drawCircle(centerX, centerY, getCircleRadius(percent), circlePaint);
}
Правда тут последний круг будет радиусом как основной, если не нужно так, тогда делить нужно на 10, но рисовать только первые 9 кругов.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru