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

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

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

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

Xcode

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

Q&A

解決済

1回答

1752閲覧

[Xcode UITableView]Dynamic typeでの記述が分かりません。

grandsn0w

総合スコア14

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

Xcode

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

0グッド

0クリップ

投稿2015/05/31 16:30

編集2015/05/31 16:33

UITableViewのDynamic typeでの記述が分かりません。
これまではStatic CellでD&DしてLableを載せる方法を使っていたのですがUITableViewControllerから作成することになり、追加できる機能に制限があったのでDynamic typeで作成しようと思いましたが、シミュレーターで表示する瞬間にクラッシュしてしまいました。

クラッシュするまでにした作業は以下です。
①StoryboardでViewを作成、TableViewを追加、.hファイルに*table1としてpropertyを追加
②新規クラスTableViewController作成、delegate2種設定(.mファイルにも記述)
③以下のコードを記述

#import "TableViewController.h"
#define cellcount 4

@interface TableViewController () <UITableViewDelegate,UITableViewDataSource>

@end

@implementation TableViewController

  • (void)viewDidLoad {
    [super viewDidLoad];

}

  • (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];

}
#pragma mark - Table view data source

  • (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {

return 1;
}

  • (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return cellcount;

}

  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSString *reuseIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:reuseIdentifier];
    if(cell==nil){
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reuseIdentifier];
    }
    NSArray *list= @[@"list1",@"list2",@"list3",@"list4"];
    cell.textLabel.text = list[indexPath.row];
    return cell;

}

コードは以上となっています。

作成したい最終目標は配列データから取得した文字列を1つずづセルに表示、
選択したセルによって次の画面で表示するWebViewのリンクURLを、別に作ったURLが格納されている配列から選んで渡す機能を作成。

となっています。

こうすればクラッシュしないよ、その目標ならこういう風に書けばいいよ、など少しでも助言いただければ幸いです。

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

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

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

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

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

okenProg

2015/06/11 14:37

このコードではクラッシュしないと思います。 おそらくStoryboardでの設定が上手く行っていないのかなと思います。 ちなみに、ヘッダーは以下のようになっていますか? @interface TableViewController : UIViewController あと、クラッシュ時に表示される右下のログなどを貼ってもらえれば 問題を解決出来るかもしれません。
guest

回答1

0

自己解決

ヘッダーが
@interface TableViewController : UITableViewControllerになっていました。
指摘の通りUITableViewControllerをUIViewControllerに変更したらクラッシュしませんでした!

恐らく自分でTableViewControllerを作成して、元からあったUITableViewControllerを削除したのはいいが、ヘッダーにUITableViewControllerの記述を残していたからだと思います。

とても助かりました。ありがとうございました!

投稿2015/06/17 14:28

grandsn0w

総合スコア14

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問