在ListView-Cell中激活WordWrap时,文本不会换行.这是一个例子:
public class ListBug extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
ListView<String> myList = new ListView<String>();
myList.setCellFactory(new Callback<ListView<String>, ListCell<String>>() {
@Override
public ListCell<String> call(ListView<String> param) {
return new ListCell<String>() {
@Override
public void updateItem(String item, boolean empty) {
setWrapText(true);
setText(item);
super.updateItem(item, empty);
}
};
}
});
for (int i = 0; i < 100; i++) {
myList.getItems()
.add("Lorem ipsum dolor sit amet, consectetur adipisicing elit, "
+ "sed do eiusmod …
Run Code Online (Sandbox Code Playgroud) 在“单一”Jakarta-EE 8 应用程序中,我们希望将 JSF 与 CDI 结合使用。下图给出了视图和类如何相互依赖的示例:
JSF-View -> ViewController -> BeanA --> BeanA1
\-> BeanA2
Run Code Online (Sandbox Code Playgroud)
在本例中,ViewController
is @Named
+ @ViewScoped
,所有其他 bean ( BeanA
, BeanA1
, BeanA2
) 都是@SessionScoped
。我们希望使用构造函数注入作为最佳实践。基于此,我们的类如下所示:
@Named
@ViewScoped
public class ViewController implements Serializable {
private final BeanA bean;
@Inject
public ViewController(final BeanA bean) {
this.bean = bean;
}
}
@SessionScoped
public class BeanA implements Serializable {
private final BeanA1 bean1;
private final BeanA2 bean2;
@Inject
public BeanA(final BeanA1 bean1, final BeanA2 bean2) …
Run Code Online (Sandbox Code Playgroud)