Я создаю приложение, которое позволяет пользователю просматривать случайную цитату каждый день. В этом приложении пользователю задают 3 вопроса, прежде чем смогут использовать приложение. Последний вопрос - простая «Какая ваша любимая категория/тема». С помощью этого приглашения пользователь нажимает на ячейку и переносится в контроллер панели вкладок, причем первым контроллером представления «ребенка» является сама цитата.Segue от UITableView до UITabBarController
Проблема: Я хочу, чтобы пользователь мог нажать на UITableViewCell и тот, который они задействовать эффекты, которые TabBarController они доведены до.
Это фото с ошибками я впадающей до сих пор. Вот код.
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if(segue.identifier == "bookSegue")
{
let bookQuoteTabBar = segue.destinationViewController as! UITabBarController
let bookQuoteScreen = bookQuoteTabBar.viewControllers?[0] as? bookQuoteScreen
}
else if(segue.identifier == "businessSegue") {
let businessQuoteTabBar: UITabBarController = segue.destinationViewController as! UITabBarController
let businessQuoteScreen = businessQuoteTabBar.viewControllers?[0] as? businessQuoteScreen
}
}
В конце концов, будет больше тем, что означает больше segues. Но сейчас, я начинаю с двух
The перетекает для каждого TabBarController являются: "bookSegue" "businessSegue"
ТАВ Бары являются: "bookQuoteTabBar" и "businessQuoteTabBar"
Первыми контроллерами просмотра «Ребенок» являются: «bookQuoteScreen» «businessQuoteScreen»
Должен ли я написать что-то еще? Правильно ли я назвал Segues, идентификаторы и классы каждого объекта? Если вам нужна дополнительная информация или ссылки, прокомментируйте, что я должен добавить, и я добавлю его в течение нескольких минут. Заранее спасибо!
--------- Последние правки ---------
BooksQuoteScreen:
import Foundation
import UIKit
class BooksQuoteScreen: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
BusinessQuoteScreen:
import Foundation
import UIKit
import Social
class BusinessQuoteScreen: UIViewController {
//============================//
//********** Outlets *********//
//============================//
let utility = Utility()
@IBOutlet weak var quoteDisplay: UILabel!
@IBOutlet weak var authorDisplay: UILabel!
@IBOutlet weak var quoteBackground: UIImageView!
...
}
я все еще получаю ту же ошибку, даже если все они, кажется, совпадают.Мне не хватает области? Не могли бы вы объяснить, как настроить его вообще? Возможно, я смогу повторить это и не испортить второй раз. Другие могут также учиться у него, чтобы они не совершали тупую ошибку, которую я совершил. –
@JNorris Если вы дважды проверили имена и т. Д., Возможно, что Xcode не понимает, что ваши два быстрых файла должны быть включены в «цель». Вы можете проверить: выберите каждый файл в списке с левой стороны, затем с правой стороны щелкните значок квадрата (вверху «Быстрая справка»), чтобы показать «Инспектор файлов». Далее на RHS Xcode будет отображаться «Target membership» - какие имена перечислены там, и помечаются ли они? – pbasdf
Первый говорит «Quote Daily», у него есть галочка. Второй говорит «Quote DailyTests», но не проверен. Последнее говорит «Quote DailyUITests», также не проверяется. Это одинаково для обоих файлов. –