Как центрировать изображение в javafx

Как я могу переместить изображение на фейсбуке так, чтобы оно было вертикально отцентрировано к тексту??

Код:

GridPane footerPane = new GridPane();     
double size = 15;

TextFlow textFlow = new TextFlow();
Text text1 = new Text("Get prayer time notifications and daily hadith on your mobile by following us on Facebook or Twitter");
text1.setFont(Font.font("Tahoma", size));
text1.setFill(Color.GRAY);
ImageView facebook = new ImageView(new Image(getClass().getResourceAsStream("/Images/facebook.png")));
Text text5 = new Text(".");
text5.setFont(Font.font("Tahoma", size));

textFlow.getChildren().addAll(text1, facebook, text5);
footerPane.setConstraints(footer_Label, 0, 0);
footerPane.getChildren().add(textFlow);

Изображение:

2 ответа

Решение

У меня та же проблема с TextFlow. Я думаю, что TextFlow в настоящее время не поддерживает aligment для своих детей.

Просто сделайте ваше изображение подходящим по размеру текста, а затем используйте setScaleY увеличить его размер и setTranslateY отрегулировать свою позицию:

double textSize = 12, iconSize = 32;
ImageView iv = new ImageView( ... );
iv.setFitHeight(textSize);
iv.setScaleY(iconSize/textSize);
// iv.setTranslateY(   )

Результат:
пример

Другие вопросы по тегам