#android #arrays #treeview
#Android #массивы #просмотр дерева
Вопрос:
у меня есть ArrayList<String> Array1
и я хочу добавить в свой treeview
List<TreeNode> nodes = new ArrayList<>();
TreeNode<Dir> app = new TreeNode<>(new Dir("app"));
nodes.add(app);
app.addChild(
new TreeNode<>(new Dir("AA01")));
app.addChild(
new TreeNode<>(new Dir("AA02")));
app.addChild(
new TreeNode<>(new Dir("AA03")));
но это вручную, я пытаюсь так
List<TreeNode> nodes = new ArrayList<>();
TreeNode<Dir> app = new TreeNode<>(new Dir("app"));
nodes.add(app);
app.addChild(
new TreeNode<>(new Dir(Array1)));
но ошибка
как добавить мой массив в мой код без ошибок, Array1 = [AA01, AA02, AA03]
Комментарии:
1. Пожалуйста, добавьте трассировку стека ошибок.
Ответ №1:
Вы предоставляете строку в качестве аргумента для конструктора Dir, когда на самом деле он должен получать массив строк.
Ответ №2:
Как сказал Androidz, вы указали неправильный тип аргумента. Вы предоставляете массив строк вместо простой строки.
Вы не можете этого сделать. Если вы не хотите добавлять их вручную, вам придется перебирать массив.
//loop Array1 and get all the strings 1 by 1
for(String s : Array1) {
//add the string to the node
app.addChild(new TreeNode<>(new Dir(s)));
}
Комментарии:
1. ваш массив
Array1
не инициализирован. Вы должны поместить значения внутрь, прежде чем сможете выполнить цикл.