2015-07-16 14 views
8

Ich begann vor ein paar Tagen mit xcode zu arbeiten, und heute habe ich versucht, eine Textansicht von der Haupt Storyboard mit dem Viewcontroller zu verbinden, aber ich habe herausgefunden, dass es nicht funktioniert .Drag & Drop Element vom Storyboard zu Viewcontroller in Xcode

Ich kann Strg + klicken, um das Element zu ziehen, aber nicht in viewcontroller.h und .m. Ich habe überprüft, dass der Viewcontroller und nicht UIViewcontroller, also ist dies nicht der Fall.

Ich benutze ein Yosemite 10.10 Mac.

Jede Art von Hilfe wäre willkommen.

Antwort

1

Versuchen Sie, diese

Ihrer Ansicht nach in Storyboard auswählen und auf Identität Inspektor auf der rechten Seite in der Klasse Ihren View-Controller-Namen eingeben und dann per Drag & Drop Artikel von Storyboard-Controller anzuzeigen dann wird es funktionieren.

Ich hoffe, es hilft.

11

Wählen Sie das Viewcontroller in Storyboard und ändern Sie den Namen des Viewcontroller auf den Namen in der .h oder .m-Datei und dann ctrl versuchen + Klicken und Ziehen enter image description here

+0

Es hat funktioniert! so viel !! –

+0

danke dude! du hast meine eine stunde gerettet: D –

0

Hey, ich glaube, Sie Ihr Storyboard nicht verbunden sind ViewController mit Ihrer ViewController-Klasse. Screenshot überprüfen, welches "suhit" in seiner Antwort hochgeladen hat. Ich möchte Ihnen etwas mehr als das sagen. Wann immer Sie ein Storyboard-Objekt mit der Klasse verbinden müssen.

  • Gehen Sie zuerst zum Dienstprogramm-Panel (rechte Seite) und stellen Sie dort die Klasse ein.
  • nach, dass Sie Ihre Kontrollen mit Klasse verbinden können

Ich hoffe, es wird Ihnen helfen.

6

Für mich bestand die Lösung darin, auf den Punkt "Ansicht" im Dropdown-Menü zu klicken, in dem alle Untersichten für den Controller angezeigt werden.

Click on root view

einfach auf dem Storyboard erscheint nicht „wählen“, um für drag auf dem Controller Klicken richtig die Steuerung und Drop Fähigkeiten, muss die Basisansicht ausgewählt werden.

2

Stellen Sie sicher, dass Sie sich im Assistenten-Editor-Modus befinden (wenn Code- und Layout-Editor nebeneinander liegen).

Von Apple:

Mit Interface Builder geöffnet in der Standard-Editor Bereich die Steuerelement, das Sie konfigurieren möchten, und klicken Sie auf die Schaltfläche Assistant Editor (enter image description here) in der Arbeitsbereich-Symbolleiste. Der Assistent-Editor öffnet die Implementierungsdatei Ihres Objekts.

Ziehen Sie das Steuerelement aus dem Steuerelement in Interface Builder in die Implementierungsdatei . (Im Screenshot zeigt der Assistent-Editor die Implementierungsdatei des View-Controllers für die Schaltfläche Warrior an.) Xcode gibt an, wo Sie eine Aktionsmethode in Ihren Code einfügen können.

+0

Das ist die richtige lösung! :) Einige gotchas. Zunächst wird standardmäßig die .m-Datei geöffnet. Um diesem weniger als hellen Design entgegenzuwirken, klicken Sie im Pfad der Brotkrümel oben im Fenster auf Automatisch. Das Drop-down-Menü hat zwei Auswahlmöglichkeiten: .h und .m. Nach etwas Fummelei hast du alles eingestellt, um den tollen Ziehvorgang durchzuführen. Ziehen Sie zweitens nicht von Ring zu Ring: Ziehen Sie aus dem Inspector-Ring in die Codezeile neben dem Ring. Ich zählte 22 Klicks und zog nach etwas, das durch ein einzelnes Dropdown ersetzt werden könnte. Darf ich hier Jesus Christus sagen? Jesus Christus. –

0

Überprüfen Sie, dass die Namen im Viewcontroller-Identity-Inspector und die .h, .m-Dateien identisch sind. Das funktionierte für mich

5

Für Anfänger -> stellen Sie sicher, dass Sie die "Strg" -Taste gedrückt gehalten haben, während Sie auf den Code ziehen und ablegen. Dies kann leicht übersehen werden.

0

Beachten Sie, dass das Ziehen an einen beliebigen Punkt in Ihrem Code nicht unbedingt funktioniert. Wenn Sie die Verbindung nicht an einer Stelle des Codes erstellen konnten, ziehen Sie sie an eine andere Stelle. Für mich habe ich versucht, eine Verbindung in der Mitte einer Funktion hinzuzufügen, die nicht funktionierte. Das Ziehen an die Anfangszeile einer Funktion oder zwischen Funktionen funktionierte.

Connection was allowed here between functions

Connection was not allowed here inside the middle of a function

Hinweis: Ich bin auf Xcode 9.1

0

Ich verwende Xcode 9.2 Ich hatte meine ViewControlled in Abschnitte Refactoring die "Erweiterung" Schlüsselwort. Es scheint, dass Sie Drag in eine Erweiterung eines ViewControllers nicht steuern können. Wenn Sie zu dem oberen Teil der Klassendefinition gehen, funktioniert das Ziehen der Steuerelemente gut (vorausgesetzt, Sie haben die anderen Dinge in diesem Thread getan, um sicherzustellen, dass die richtige Klasse dem View-Controller zugeordnet ist.)