-4

XCodeについてはよくわかりません。ええと、私は XCode についてほとんど何も知りません。しかし、私はTableViewに問題があります。

私はこのチュートリアルに従っていましたが、自分で作成しようとすると、TableView 項目を除いてすべてが完全に機能します。テーブルビューを含む私が試したすべてのチュートリアルで、同じ問題が発生しました。アイテムが表示されていません:(私はあなたが私を助けるために必要なコードがわからないので、プロジェクト全体のダウンロードリンクを残します.

ダウンロードリンク (MediaFire)

助けてください!頭が爆発しそう……。

これは、アプリを実行しようとしたときに発生するエラーです。

//
//  main.m
//  Demo TWo
//
//  Created by Alexander Pina on 2/18/13.
//  Copyright (c) 2013 Alexander Pina. All rights reserved.
//

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

int main(int argc, char *argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

@autoreleasepoo { ... で、「スレッド 1: シグナル SIGABRT

4

3 に答える 3

0

デリゲートとデータソースを追加します。デリゲート &dataSource を追加するのを忘れていると思います。そのため、テーブルが表示されません。次の行を viewDidLoad().like 以下のコードに追加します

self.myTableView.dataSource = self;
  self.myTableView.delegate = self;
于 2013-02-19T02:01:18.897 に答える
0

私はあなたのプロジェクトを見ました。あなたの問題は、Xcode のバグが原因だと思います。これは、xib ファイルまたは Storyboard ファイルを接続するときに発生する可能性があり、xib ファイルのファイル インスペクターで特定のものを変更した後、何度も問題に遭遇しました。

ストーリーボードで UITableViewController のカスタム クラス名を Tab2_TableViewController に設定しても、Tab2_TableViewController クラス コードは使用されませんでした。これをテストするには、Tab2_TableViewController サブクラスの viewDidLoad にブレークポイントを設定し、メソッドが呼び出されないことを確認しました。動作するはずですが、Xcode で何かがおかしくなったため、動作していませんでした。

私はこれを行うことで問題を解決しました:

  • Tab2_TableViewController.h および .m ファイルを別のフォルダーにコピーする
  • Xcode プロジェクトから Tab2_TableViewController.h および .m を削除する
  • Tab2_TableViewController.h と .m を他のフォルダーから Xcode プロジェクトにコピーします。

これで問題は解決しました。テーブルビューのセルがビューにロードされています。


実際、私は問題を解決するためのより良い方法を見つけました。Xcode Project Navigator で、プロジェクト ファイルを選択します。ターゲットの DemoTWo->Build Phases->Compile Sources を選択します。小さな「+」ボタンを押して、Tab2_TableViewController.m を追加します。通常、ファイルを追加すると、自動的にこのリストに追加されますが、何らかの理由でそのファイルが追加されませんでした。

ここに画像の説明を入力

于 2013-02-19T06:13:50.913 に答える
-1

これを試して、

->xcode で単一の View Application ベースのサンプル プロジェクトを作成するだけです。

ViewController.h

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UITableViewDataSource,UITableViewDelegate>

{
IBOutlet UITableView *TableView;
NSArray *arrItems;
}
@end

viewcontroller.m

     #import "ViewController.h"
     @interface ViewController ()

     @end

     @implementation ViewController

      - (void)viewDidLoad
     {
         [super viewDidLoad];
         arrItems =[[NSArray alloc]initWithObjects:@"row1",@"row2",@"row3",@"row4",@"row5",@"row6",@"row7", nil];
        TableView.dataSource =self;
         TableView.delegate =self;
// Do any additional setup after loading the view, typically from a nib.
     }
        #pragma mark -
        #pragma mark Table view data source

      - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
         // Return the number of sections.
         return 1;
         }


      - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
         // Return the number of rows in the section.
      return [arrItems count];
              }


         - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

        static NSString *CellIdentifier = @"Cell";

       UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
         if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];

    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    [cell.textLabel setFont:[UIFont boldSystemFontOfSize:16]];
    [cell.textLabel setTextColor:[UIColor colorWithRed:0 green:0.5 blue:0 alpha:1]];
          }

    cell.textLabel.text = [arrItems objectAtIndex:indexPath.row];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
         }



     #pragma mark -
     #pragma mark Table view delegate

         - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {


         }
于 2013-02-19T04:16:35.857 に答える