0

マスター詳細ビューの概念を持つ iPad アプリケーション (iOS6.1) を作成しています。最初のビューは、Plist からロードされたアイテムのリストを含むテーブル ビューです。各行が選択されると、2 番目のテーブル ビューが別の Plist でロードされます。それらは、UILabelとUIImageを備えたUIViewを表示する必要がある私の詳細ビューです。didSelectRowAtIndexPathメソッドを使用しています。最初の 2 つのテーブル ビューは適切に表示され、行が読み込まれ、対応するビューが表示されますが、UILabel と画像を表示するはずの最後の詳細ビューは空です。この問題を解決するのに役立つ人はいますか

私の申請の流れ

didSelectRowAtIndexPathメソッドの私のコードは

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

 {

TaskDetailViewController *newTaskDetailViewController = [[TaskDetailViewController alloc] init];

// pass the row to newDetailViewController

if (weekNumber == 0)
{
    newTaskDetailViewController.taskdescription = [weeklist1 objectAtIndex:indexPath.row];

}
if (weekNumber == 1)
{
    newTaskDetailViewController.taskdescription = [weeklist2 objectAtIndex:indexPath.row];

}

if (weekNumber == 2)
{
    newTaskDetailViewController.taskdescription = [weeklist3 objectAtIndex:indexPath.row];

}
// ...... repeated for 39 times because of the list


 newTaskDetailViewController.taskNumber = indexPath.row;
[self.navigationController pushViewController:newTaskDetailViewController animated:YES];
}

DetailView ヘッダー

#import <UIKit/UIKit.h>

@interface TaskDetailViewController : UIViewController

@property int taskNumber;

@property(strong , nonatomic) NSString *taskdescription;

@property (nonatomic , strong) NSMutableDictionary * tasks;

@property (strong, nonatomic) IBOutlet UIImageView *questionImage;

@property (strong, nonatomic) IBOutlet UILabel *displayText;

@end

実装ファイルには

@implementation TaskDetailViewController

@synthesize taskNumber;

@synthesize taskdescription;

@synthesize tasks;

@synthesize displayText;

@synthesize questionImage;


-(void)viewDidLoad

{

[super viewDidLoad];

// Do any additional setup after loading the view.

self.title = taskdescription;

NSLog(@"%@", taskdescription);

}
4

1 に答える 1

0

あなたの問題は、 alloc init を使用して TaskDetailViewController のインスタンスを作成することです。ストーリーボードでそのコントローラーを作成したので、指定した識別子を使用してストーリーボードからインスタンス化する必要があります (私の例では DetailViewController):

TaskDetailViewController *newTaskDetailViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewController"];
于 2013-06-05T05:22:33.890 に答える