【发布时间】:2012-01-31 21:44:54
【问题描述】:
我有一个从主视图调用的方法,该方法正在设置我想在滚动视图中显示的图像的图像名称。
- (void)loadImage:(NSString *)myImageName
{
if (myImageName == @"one") {
imageName = myImageName;
}
if (myImageName == @"two") {
imageName = myImageName;
}
if (myImageName == @"three") {
imageName = myImageName;
}
//Reloads view here???
}
我正在像这样在我的 viewdidload 方法中加载图像
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//Create scrollview
scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
scrollView.delegate = self;
scrollView.bounces = NO;
//Create scrollviewimage
if (imageName == @"one") {
image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"ha.png"]];
}
if (imageName == @"two") {
image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"haha.png"]];
}
if (imageName == @"three") {
image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"hahaha.png"]];
}
containerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 550)];
//Add subview
[containerView addSubview:image];
//initViews
scrollView.contentSize = containerView.frame.size;
[scrollView addSubview:containerView];
//scrolling
scrollView.minimumZoomScale = 1.0;
scrollView.maximumZoomScale = 31.0;
[scrollView setZoomScale:scrollView.minimumZoomScale];
//highrachy
[self.view addSubview:scrollView];
}
当我从 tableviewcell 选择中设置父视图的图像名称时会发生什么我将 nsstring 传递到 loadImage.. 然后加载图像在 viewdidload 中设置名称.. 但是发生的事情是只有第一个选择剂量任何东西..所以你总是会看到你选择的第一张图片..所以如果你选择第二张图片,你选择的每隔一个图片就会显示第二张图片..
任何帮助都会很棒。
这是父视图单元格选择的样子
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//Sets the back button for the new view that loads (this overrides the usual parentview name with "Back")
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style: UIBarButtonItemStyleBordered target:nil action:nil];
if (!self.detailViewController) {
self.detailViewController = [[ICDDetailViewController alloc] initWithNibName:@"ICDDetailViewController" bundle:nil];
if (indexPath.section == 0) {
_detailViewController.imageName = @"one";
// NSLog(@"%@", indexPath);
}
if (indexPath.section == 1) {
_detailViewController.imageName = @"two";
// NSLog(@"%@", indexPath);
}
if (indexPath.section == 2) {
_detailViewController.imageName = @"three";
// NSLog(@"%@", indexPath);
}
}
[self.navigationController pushViewController:self.detailViewController animated:YES];
}
【问题讨论】:
标签: iphone ios uitableview uiview