Frage

Ich weiß nicht, wie es passiert ist, aber ganz plötzlich in meinem Tisch Ansicht kann ich nicht eine leere Auswahl mehr machen. Wie eine Tabellenansicht Zeile hat immer ausgewählt werden, und es kann nicht durch Klicken irgendwo sonst in der Tabellenansicht abgewählt werden. Ich kann eine andere Zeile auswählen, aber ich kann nicht eine leere Auswahl treffen.

In der Interface Builder-Attribute für die Tabellenansicht leer Auswahl aktiviert ist, so dass ich weiß nicht, wo neben aussehen. Die eine wichtige Änderung, die ich machte, war, dass ich OS X Snow Leopard installiert. Ich bin nicht sicher, ob dieses Problem etwas damit zu tun hat.

Danke

War es hilfreich?

Lösung 4

Ich bin nicht zu sagen, viel mehr als dies erlaubt: Es scheint ein Problem mit 10,6 spezifisch zu sein

Andere Tipps

Ich schlug genau dieses gleiche Problem (ich bin mit XCode 4.2 aber Kompilieren gegen die 10.6sdk). NSOutlineView :: DeselectAll wurde Abwahl einfach nicht Dinge. Ich habe eine ziemlich komplexe NSOutlineView, die das gleiche Verhalten zeigt. Ich hatte einen Blick auf den Apfelentwicklerforen und anderen Orten, um zu versuchen und um dieses Problem zu umgehen. Doch am Ende, um diesen für mich arbeiten war sehr einfach und ich konnte einfach verwenden:

- (void) myDeselectAll
{
   [self selectRowIndexes:[NSIndexSet indexSet] byExtendingSelection:NO];
}

Versuchen Sie es programmatisch mit der Setter-Methode setAllowsEmptySelection: tun. Alternativ versuchen in IB leere Auswahl zu deaktivieren, zu speichern, dann ermöglicht es, spart noch einmal. Das könnte es beheben.

Vergewissern Sie sich auch, dass etwas in tableView:shouldSelectRow: hindert Sie nicht von ihr (sofern Sie diese Delegatmethode implementiert haben).

Haben Sie Ihre Spalten zu einem Array-Controller gebunden? Wenn ja, überprüfen Sie die Attribute des Controllers.

Das ist ein bisschen alt, aber für diejenigen, die eine Antwort auf diese benötigen: Verwenden Sie das Interface Builder und markieren den Array-Controller. entfernen Häkchen „leere Auswahl vermeiden“. Wenn dies nicht getan, einen Auslass für die Array-Controller erstellen. Hier habe ich es DocumentArrayController genannt.

dann zu leere Auswahl:

 [_DocumentArrayController removeSelectionIndexes:
      [_DocumentArrayController selectionIndexes]]; 
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top