plist ライブラリ内の各アイテムのラベルと画像を取得して、[詳細] タブに表示しようとしています。
これは、plist辞書を機能させることができるテーブルビューの写真です。画像の配列と配列または項目。(ex item 0 は、thermostat.jpg と Thermostat ラベルの両方です。
これは、セルをクリックしたときの詳細ビューの写真です。セルとサーモスタットの画像からラベルを引き出します。
ただし、plist (トイレ) の項目 1 をクリックすると、トイレの名前が表示されますが、サーモスタットの画像は表示されます。そのようです。
これがdetailviewcontrollerの私のコードです
the.h
#import <Foundation/Foundation.h>
@interface DetailViewController : UIViewController
{
IBOutlet UIScrollView *scrollView;
}
@property (nonatomic, strong) IBOutlet UILabel *itemLabel;//Name of that view
@property (nonatomic, strong) NSString *itemName;
@property (nonatomic, strong) IBOutlet UIImageView *myImageView; //Image View
@property (strong, nonatomic) IBOutlet UILabel *myTextView; //Description View
@end
そしてM
#import "DetailViewController.h"
@interface DetailViewController ()
@end
@implementation DetailViewController
@synthesize itemLabel;
@synthesize itemName;
@synthesize myImageView;
@synthesize myTextView;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
itemLabel.text = itemName;
//**************SCROLL VIEW*************
[scrollView setScrollEnabled:YES];
[scrollView setContentSize:CGSizeMake(320,960)];
scrollView.contentInset=UIEdgeInsetsMake(0.0,0.0,90.0,0.0);
////I know below this is the Problem, BUT im not sure what its supposed to be?////
NSDictionary *picturesDictionary = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"repairlist" ofType:@"plist"]];
NSArray *imageArray = [picturesDictionary objectForKey:@"Thumbnail"];
myImageView.image = [UIImage imageNamed:[imageArray objectAtIndex:0]];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
全体として、そのセルをクリックしたときに画像が正しく表示されるようにしようとしています
これは、使用している私の plist im のイメージです。
私はすでにTableViewControllerにこれを持っています
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"ItemListCell"]) {
DetailViewController *destViewController = segue.destinationViewController;
NSIndexPath *indexPath = nil;
if ([self.searchDisplayController isActive]) {
indexPath = [self.searchDisplayController.searchResultsTableView indexPathForSelectedRow];
destViewController.itemName = [searchResults objectAtIndex:indexPath.row];
} else {
indexPath = [self.myTableView indexPathForSelectedRow];
destViewController.itemName = [repairList objectAtIndex:indexPath.row];
//destViewController.textView = [descrip objectAtIndex:indexPath.row];
}
}
}