質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

3回答

1350閲覧

バージョンを表示させようとするとアプリが落ちてしまう

sakku727

総合スコア25

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/12/29 04:00

xcodeを触り始めて半年の高校1年生です。

前提・実現したいこと

テニスのスコアを手動でカウントできるようなシステムを作っています。
設定画面でバージョンを表示できるようにしている時にビルドし、バージョンを見ることができる設定ボタンを押すと以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

Thread 1: signal SIGABRT

該当のソースコード

swift

1 override func viewDidLoad() { 2 super.viewDidLoad() 3 // バージョン 4 if let version: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String { 5 versionLabel.text = version 6 } 7}

試したこと

↑のコードを書き込み、入力ミスがないか確認するということだけしか自分の力不足で、できることがない現状です。自分の理解力がなくどのサイトを見てもよくわからない状況なのでどなたか力を貸してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2019/01/07 04:01

Consoleに表示されているエラーメッセージを書いて下さい。
sakku727

2019/01/09 00:09

2019-01-09 09:08:56.730817+0900 tennis score[1371:66196] libMobileGestalt MobileGestalt.c:890: MGIsDeviceOneOfType is not supported on this platform. 2019-01-09 09:08:56.821579+0900 tennis score[1371:66196] [framework] CUIThemeStore: No theme registered with id=0 2019-01-09 09:08:58.784919+0900 tennis score[1371:66196] Unknown class _TtC12tennis_score13configuration in Interface Builder file. 2019-01-09 09:08:58.809005+0900 tennis score[1371:66196] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UITableViewController 0x7ff064404990> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key deuce.' *** First throw call stack: ( 0 CoreFoundation 0x000000010b8a729b __exceptionPreprocess + 331 1 libobjc.A.dylib 0x000000010ae43735 objc_exception_throw + 48 2 CoreFoundation 0x000000010b8a6e09 -[NSException raise] + 9 3 Foundation 0x000000010a8700b4 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 292 4 UIKitCore 0x000000010f522532 -[UIViewController setValue:forKey:] + 87 5 UIKitCore 0x000000010f1ebada -[UIRuntimeOutletConnection connect] + 109 6 CoreFoundation 0x000000010b892ddd -[NSArray makeObjectsPerformSelector:] + 317 7 UIKitCore 0x000000010f1056d1 -[UINib instantiateWithOwner:options:] + 1814 8 UIKitCore 0x000000010f5296f2 -[UIViewController _loadViewFromNibNamed:bundle:] + 383 9 UIKitCore 0x000000010f52a07c -[UIViewController loadView] + 177 10 UIKitCore 0x000000010f3baccc -[UITableViewController loadView] + 83 11 UIKitCore 0x000000010f52a38e -[UIViewController loadViewIfRequired] + 175 12 UIKitCore 0x000000010f52abe0 -[UIViewController view] + 27 13 UIKitCore 0x000000010f786a89 -[_UIFullscreenPresentationController _setPresentedViewController:] + 89 14 UIKitCore 0x000000010f15b5dd -[UIPresentationController initWithPresentedViewController:presentingViewController:] + 133 15 UIKitCore 0x000000010f53dc4d -[UIViewController _presentViewController:withAnimationController:completion:] + 3713 16 UIKitCore 0x000000010f5409eb __63-[UIViewController _presentViewController:animated:completion:]_block_invoke + 99 17 UIKitCore 0x000000010f541079 -[UIViewController _performCoordinatedPresentOrDismiss:animated:] + 511 18 UIKitCore 0x000000010f540951 -[UIViewController _presentViewController:animated:completion:] + 173 19 UIKitCore 0x000000010f540c90 -[UIViewController presentViewController:animated:completion:] + 150 20 UIKitCore 0x000000010f545e9a -[UIViewController _showViewController:withAction:sender:] + 274 21 UIKitCore 0x000000010f2f7b80 __66-[UIStoryboardShowSegueTemplate newDefaultPerformHandlerForSegue:]_block_invoke + 134 22 UIKitCore 0x000000010f2f7625 -[UIStoryboardSegueTemplate _performWithDestinationViewController:sender:] + 276 23 UIKitCore 0x000000010f2f74e3 -[UIStoryboardSegueTemplate _perform:] + 82 24 UIKitCore 0x000000010f2f77a5 -[UIStoryboardSegueTemplate perform:] + 157 25 UIKitCore 0x000000010edfd7c3 -[UIApplication sendAction:to:from:forEvent:] + 83 26 UIKitCore 0x000000010ef35e85 -[UIControl sendAction:to:forEvent:] + 67 27 UIKitCore 0x000000010ef361a2 -[UIControl _sendActionsForEvents:withEvent:] + 450 28 UIKitCore 0x000000010ef350e6 -[UIControl touchesEnded:withEvent:] + 583 29 UIKitCore 0x000000010f610334 -[UIWindow _sendTouchesForEvent:] + 2729 30 UIKitCore 0x000000010f611a30 -[UIWindow sendEvent:] + 4080 31 UIKitCore 0x000000010ee17e10 -[UIApplication sendEvent:] + 352 32 UIKitCore 0x000000010ed500d0 __dispatchPreprocessedEventFromEventQueue + 3024 33 UIKitCore 0x000000010ed52cf2 __handleEventQueueInternal + 5948 34 CoreFoundation 0x000000010b80ab31 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 35 CoreFoundation 0x000000010b80a3a3 __CFRunLoopDoSources0 + 243 36 CoreFoundation 0x000000010b804a4f __CFRunLoopRun + 1263 37 CoreFoundation 0x000000010b804221 CFRunLoopRunSpecific + 625 38 GraphicsServices 0x00000001149911dd GSEventRunModal + 62 39 UIKitCore 0x000000010edfc115 UIApplicationMain + 140 40 tennis score 0x000000010a509814 main + 68 41 libdyld.dylib 0x000000010dc8d551 start + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)
guest

回答3

0

ベストアンサー

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UITableViewController 0x7ff064404990> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key deuce.'

deuceのアウトレットがおかしそうですが、ちゃんと記述はあるようなので、UITableViewControllerのCustom Classの設定が出来ていないのではないでしょうか?

ちなみに、普通、UITableViewCellのアウトレットを繋ぐことはないと思うのですが、何をやろうとしているのでしょう?

投稿2019/01/09 00:26

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sakku727

2019/01/09 09:01

なんとなくこの辺繋ぐのかな、と何も考えずに繋げてしまいました。 UITableViewControllerのCustom Classの設定についてネットで調べてたんですけど、いまいちよくわかりません。今自分は何をすればいいのでしょうか。できたら教えていただけないでしょうか。
fuzzball

2019/01/09 09:03

一から作り直すのが早いと思います。 今度は考えながら作業を進めて下さい。
hameji001

2019/01/09 09:32 編集

確かに、AppleWatchでテニスのスコア入力、 iPhoneアプリでみれるアプリあったら面白そうですね。 ひとまず、custom class、 tableviewについて勉強すればいいのではないでしょうか? 頑張ってください。
sakku727

2019/01/09 12:08

ちなみにどのようなもので勉強されましたか?
hameji001

2019/01/09 12:22 編集

方法は色々ありますが、 高校生なら、時間がありますし、 プログラミングも必須になったことですし、 親を説得しやすいと思いますし、 長期休暇とかにスクールに通うのがいいのでは? それにそんなに高くないコースもあると思いますが。。。 学校でそういう部もあるかもしれないけど、 きっとテニスアプリだから、テニス部なんですよね(笑) あとは、地道にネットでtableViewの解説ページの ホームページを読み漁り、コードを書いて動かしてみるかですね。
sakku727

2019/01/09 15:32

丁寧な説明、ありがとうございます。 今から速攻でC言語からswiftに乗り換えますw
guest

0

if文を使わず、下記のようにしたらどうですか?

swift

1let version : String! = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String 2versionLabel.text = version

投稿2019/01/07 03:41

t.harima

総合スコア55

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

おそらくボタンのIBActionの接続部分の問題だと思います。
Storyboardと結んだ後にメソッド名を変更したりしませんでしたか?

一度接続を解除してもう一度結んでみてください。

投稿2018/12/29 05:10

_Kentarou

総合スコア8490

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sakku727

2018/12/29 13:15

接続を解除してもう一度挑戦して見たのですが、同じエラーが出てしまいました。
_Kentarou

2018/12/30 08:01

それ以外のコードも載せられますか?場所が特定できないので。
sakku727

2019/01/09 00:05

import UIKit class configuration: UITableViewController { @IBOutlet weak var tiebreak: UITableViewCell! @IBOutlet weak var deuce: UITableViewCell! @IBOutlet weak var set: UITableViewCell! @IBOutlet weak var versionLabel: UILabel! override func viewDidLoad() { super.viewDidLoad() // アプリのバージョン if let version: String = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String { versionLabel.text = version } } // MARK: - Table view data source override func numberOfSections(in tableView: UITableView) -> Int { // #warning Incomplete implementation, return the number of sections return 3 } override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { // #warning Incomplete implementation, return the number of rows switch section { case 0: return 3 case 1: return 1 case 2: return 1 default: // ここが実行されることはないはず return 0 } } }
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問