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

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
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
22.01.2016, 13:01
В общем вроде понял что не так: во первых посылаем в методы setZeroPieChartSize, setFirstPieChartSize и т.д. не размер, а прогресс seekBar'a деленный на 100
Java
1
pieChartView.setZeroPieChartSize((float)progress / 100f);
Далее добавляем метод для расчета rect'a в BaseSurfaceView:
Java
1
2
3
4
5
6
7
private void calculateRectForPieSlice(RectF source, float slicePercent) {
    float invisibleRadius = radius / 4; //Это радиус бОльшего центрального круга, можно его вынести в поле
    float visibleRadius = radius - invisibleRadius;
    float sliceRadius = invisibleRadius + visibleRadius * slicePercent;
 
    source.set(centerX - sliceRadius, centerY - sliceRadius, centerX + sliceRadius, centerY + sliceRadius);
}
Потом вместо текущего получения rect'a в методе drawPartsOfPie
Java
1
2
3
4
//Вот это было
rectf.set(centerX - zeroPieChartSize / 2, centerY - zeroPieChartSize / 2, centerX + zeroPieChartSize / 2, centerY + zeroPieChartSize / 2);
//Делаем так
calculateRectForPieSlice(rectf, zeroPieChartSize);
И далее все так же, у меня стало нормально отображаться.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru