Я пытаюсь центрирования знак минус на экране, используя следующий код:Центр минус на экране в Java
text = "-";
textPosition = new Point();
Rect bounds = new Rect();
paint.getTextBounds(text, 0, text.length(), bounds);
paint.setTextAlign(Paint.Align.CENTER);
textPosition.x = (int) (myArea.left + myArea.width()/2);
textPosition.y = (int) (myArea.top + myArea.height()/2 + bounds.height()/2);
canvas.drawText(text, textPosition.x, textPosition.y, paint);
Этот код работает как шарм, когда «текст» что-то другое (например, знак плюса), но в этом случае знак минуса расположен слишком высоко на экране.
EDIT: Вот результат для четырех разных операторов.
И ... самое смешное, что я создал свой собственный шрифт для отображения этих операторов. Поэтому я знаю, что он должен быть правильно ориентирован.
PS: Теперь, когда я смотрю на это, все от них, кажется, немного не, хотя минус знак является худшим ...
Не могли бы вы предоставить нам текущий экран и ожидаемый? –
Я не уверен, что помогает совместное использование экрана. Дело в том, что минус не центрирован по вертикали. Кстати, в случае «_» он центрируется правильно. То, что я хочу, - это небольшая коробка с «-» в центре ее. – MWB
@NikolasCharalambidis: Я обновил описание и включил скриншот. Надежда (или кто-то еще) вы можете помочь! – MWB