Nstreecontroller no responde a relocrotriz
-
30-10-2019 - |
Pregunta
Tengo un nstreecontroller con enlaces a una clase.
NsoutlineView Dirtree se une al NSTREECONTROLLER
En particular, el contenido de la vista de esquema se une a ArregedObjects
Esto parece funcionar bien, pero estoy en mi ingenio para descubrir por qué no responde a Reloaddata.
Las rutas de teclas nstreecontroller son:-
Children subDirectories
Count numberOfSubDirs
Estos se enumeran a continuación; NumberOfSubDirs devuelve un recuento simple de subdirectorios (con una pantalla de diagnóstico adicional).
- (NSArray *)subDirectories {
if (subDirectories == nil) {
[self loadSubDirectories];
}
return subDirectories;
}
- (NSInteger)numberOfSubDirs {
NSArray *tmp = [self subDirectories];
NSLog(@"numberOfSubDirs %@ %d", [self relativePath], [tmp count]);
return [tmp count];
}
Si llamo a una función de actualización que actualiza los datos, llame [Dirtree ReloadData]; Obtengo la siguiente salida:-
Reload Data
numberOfSubDirs Shared 7
numberOfSubDirs Adobe 1
numberOfSubDirs bZTree2 0
numberOfSubDirs Ian Documents 25
numberOfSubDirs Library 1
numberOfSubDirs NET 1
numberOfSubDirs TSA 12
numberOfSubDirs Wacom 1
Si elimino un directorio (externamente en Finder) y llamo a la función de actualización, obtengo la siguiente salida:-
Reload Data
numberOfSubDirs Shared 6
numberOfSubDirs Adobe 1
numberOfSubDirs bZTree2 0
numberOfSubDirs Ian Documents 25
numberOfSubDirs Library 1
numberOfSubDirs NET 1
numberOfSubDirs TSA 12
numberOfSubDirs Wacom 1
NSTREECONTROLLER llama a NumberOfSubdirs a los padres "compartidos", y se le dice correctamente que ahora tiene 6 subdirectorios.
Sin embargo, luego consulta 7 subdirectorios, incluido el elemento eliminado "bztree2", y no actualiza la pantalla para mostrar solo los 6 que existen.
No hay solución correcta