16.03.2014 / 13:46 | |
usb_device Пользователь Сейчас: Offline
Имя: Денис Откуда: USB Регистрация: 07.01.2013
| aNNiMON, может туплю, но что передавать в float dp ?
|
16.03.2014 / 13:50 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| usb_device, дп- независимые пиксели.
|
16.03.2014 / 13:52 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| Передаешь их методу Виктора и на выходе получаешь количество пикселей.
|
16.03.2014 / 13:53 | |
usb_device Пользователь Сейчас: Offline
Имя: Денис Откуда: USB Регистрация: 07.01.2013
| samodelkin, типа так?
float dp=context.getResources().getDisplayMetrics().densityDpi; DisplayMetrics dM = new DisplayMetrics(); pix=(int)convertDpToPixel(dp,dM);
|
16.03.2014 / 14:00 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| usb_device, первая строка лишняя, а в третьей вместо "dp" нужный размер в независимых пикселях вписывай, например 100, и в переменной pix будет размер в простых пикселях.
Изменено samodelkin (16.03 / 14:02) (всего 2 раза) |
16.03.2014 / 14:04 | |
usb_device Пользователь Сейчас: Offline
Имя: Денис Откуда: USB Регистрация: 07.01.2013
| samodelkin, аа. Вот как, я просто подумал что туда нужно какое то системное значение передавать. Теперь понятно. Спасибо!
|
16.03.2014 / 14:08 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| usb_device, не за что. У Виктора Аннимона есть методы на все случаи. |
16.03.2014 / 14:21 | |
usb_device Пользователь Сейчас: Offline
Имя: Денис Откуда: USB Регистрация: 07.01.2013
| странно, если использую метод то возвращает 0. Но если вместо metrics.densityDpi пропишу значение моего экрана, а это 240 то возвращает какое то значение.
|
16.03.2014 / 14:24 | |
samodelkin Пользователь Сейчас: Offline
Имя: Сергей Откуда: Липецк Регистрация: 05.11.2013
| usb_device, там не надо создавать наверно метрику, а надо получить с помощью метода гетдисплей метрикс.
Изменено samodelkin (16.03 / 14:25) (всего 1 раз) |
16.03.2014 / 14:26 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| usb_device, DisplayMetrics dM = new DisplayMetrics(); так не делают. Написал же getResources().getDisplayMetrics()
То есть: pix = (int) convertDpToPixel(dp, getResources().getDisplayMetrics());
Если уж совсем туго будет, тогда вот тебе подсказка. Ты использовал 100 и 50 как значение пикселей, а теперь тебе надо будет сравнивать с возвращенными значениями. Грубо говоря так: if (x - prevX > convertDpToPixel(100, getResources().getDisplayMetrics())) { .. } Только лучше закешируй это значение, чтоб не дёргать метрику.
__________________
let live Изменено aNNiMON (16.03 / 14:27) (всего 1 раз) |