Вниз  Android-программирование (1-ые посты)
- 10.09.2013 / 12:05
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Virus-ON, и? Логи там тоже можно глянуть.
__________________
 let live
- 10.09.2013 / 12:22
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Заработало. Просто я пишу как бы по учебнику, а как бы свою шарманку. В именах затык был. :)
- 12.09.2013 / 19:01
Naik
  Пользователь

Naik 
Сейчас: Offline
Такая проблема: есть EditText и нужно рядом (слева) отрисовать нумерацию строк в EditText, для этого в моем View нужно рисовать числа на расстоянии точно таком, как расстояние между строками в EditText.

Я устанавливаю одинаковый шрифт (размер, тип) для моего view и EditText и в своем рисую числа на расстоянии paint.getFontSpacing() + paint.getFontMetricsInt().leading. Но в EditText получается межстрочный интервал больше. Проверил — все данные шрифта и там и там одинаковые (leading, ascent, descent, fontSpacing). Получается в EditText межстрочное расстояние вычисляется по-другому. Как? И еще, как в EditText вычисляется отступ первой строчки сверху? (для 20го шрифта — 3-4 пикселя) ?

Исходник
Открыть спойлер
Еще заметил, что leading и в моем view и в EditText равно нулю, так что его можно и не учитывать.

Изменено Naik (12.09 / 19:02) (всего 1 раз)


Прикрепленные файлы:
Screenshot_2013(…).png (115.32 кб.) Скачано 121 раз
- 12.09.2013 / 19:16
Naik
  Пользователь

Naik 
Сейчас: Offline
А поменял шрифт на 10, теперь наоборот — в EditText между строками расстояние меньше чем у меня :-(
- 12.09.2013 / 19:19
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Naik, что-то я не совсем понял про getFontMetricsInt, оно же int возвращает, как ты от него Leading берёшь?
__________________
 let live

Изменено aNNiMON (12.09 / 19:19) (всего 1 раз)
- 12.09.2013 / 20:55
Naik
  Пользователь

Naik 
Сейчас: Offline
aNNiMON, Ну переделал на getFontMetrics() - ничего не изменилось
- 5.10.2013 / 14:36
Naik
  Пользователь

Naik 
Сейчас: Offline

Изменено Naik (5.10 / 14:36) (всего 1 раз)
- 14.10.2013 / 16:43
kda-spb
  Пользователь

kda-spb 
Сейчас: Offline
Как узнать запущен сервис или нет?
- 14.10.2013 / 19:13
Naik
  Пользователь

Naik 
Сейчас: Offline
kda-spb, 1. Хранить boolean в SharedPreferences
2. Создать public static метод в ceрвисе и через него узнавать
3. С помощью ActivityManager
  1. public static boolean isServiceRunning(String className){
  2.       ActivityManager activityManager = (ActivityManager) Application.getContext().getSystemService(Context.ACTIVITY_SERVICE);
  3.       List<RunningServiceInfo> services = activityManager.getRunningServices(Integer.MAX_VALUE);
  4.       for (RunningServiceInfo runningServiceInfo : services) {
  5.           if (runningServiceInfo.service.getClassName().equals(className)) {
  6.               return true;
  7.           }
  8.       }
  9.       return false;
  10.    }


Изменено Naik (14.10 / 19:15) (всего 1 раз)
- 14.10.2013 / 20:07
kda-spb
  Пользователь

kda-spb 
Сейчас: Offline
Naik, Спасибо за подробный ответ. Ты написал про стат. метод, а если статичную переменную в классе сервиса - покатит, как думаешь? Я просто в данный момент проверить не могу, много переписывать для теста нужно.
Наверх  Всего сообщений: 4453
Фильтровать сообщения
Поиск по теме
Файлы топика (184)