Pessoal, vi tópicos semelhantes mas não responderam minha duvida, estou tentando exibir informações em uma tableView mas apesar das rows serem criadas, as informações estão invisiveis, creio que seja o valueFactory, mas não consigo arrumar, segue as classes principais:
package tabelas;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import javafx.application.Application;
import static javafx.application.ConditionalFeature.FXML;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.AnchorPane;
public class Tabelas implements Initializable {
@FXML
TableView<Pessoa> table;
List<Pessoa> pessoas = new ArrayList<>();
@FXML
TableColumn<Pessoa, String> columnNome;
@FXML
TableColumn<Pessoa, String> ColumnIdade;
ObservableList<Pessoa> obsList;
@FXML
AnchorPane root = new AnchorPane();
public void exibeTabela() {
columnNome.setCellValueFactory(new PropertyValueFactory<Pessoa, String>("nome"));
ColumnIdade.setCellValueFactory(new PropertyValueFactory<Pessoa, String>("idade"));
Pessoa pessoa = new Pessoa("Marcos", "9");
Pessoa pessoa2 = new Pessoa("Joao", "1");
pessoas.add(pessoa);
pessoas.add(pessoa2);
obsList = FXCollections.observableArrayList(pessoas);
table.setItems(obsList);
}
@FXML
public void btnAcaoOnAction(ActionEvent acao) {
}
@Override
public void initialize(URL location, ResourceBundle resources) {
exibeTabela();
}
}
public class Pessoa {
public String nome;
public String idade;
public Pessoa(String nome, String idade){
this.nome = nome;
this.idade = idade;
}
}