作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的脑海中是否足够简单?选择单元格 - 将详细信息面板标题设置为当前所选单元格的名称。
如果您需要任何其他文件,请告诉我。任何帮助将不胜感激!!
我的MasterViewController.h如下
#import "MasterViewController.h"
#import "DetailViewController.h"
#import "TableViewCell.h"
@interface MasterViewController ()
@property NSMutableArray *objects;
@end
@implementation MasterViewController
- (void)awakeFromNib {
[super awakeFromNib];
self.clearsSelectionOnViewWillAppear = NO;
self.preferredContentSize = CGSizeMake(320.0, 600.0);
}
- (IBAction)goHome{
[self dismissViewControllerAnimated:YES completion:nil];
}
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"Root View Controller";
//Add button to NavigationController
UIBarButtonItem *goHome =
[[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Home",)
style:UIBarButtonItemStyleDone
target:self
action:@selector(goHome)];
self.navigationItem.leftBarButtonItem = goHome;
_subjectList = @[@"Art",
@"Business",
@"Citizenship",
@"Computer Science",
@"Dance",
@"Design Technology",
@"Drama",
@"English",
@"Food Technology",
@"Geography",
@"History",
@"ICT",
@"Languages",
@"Life Course",
@"Maths",
@"Media Studies",
@"Music",
@"PE",
@"Religious Studies",
@"Science",
@"Textiles",];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#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 _subjectList.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"TableViewCell";
TableViewCell *Cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
long row = [indexPath row];
Cell.SubjectNameLabel.text = _subjectList[row];
return Cell;
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
NSDate *object = self.objects[indexPath.row];
DetailViewController *controller = (DetailViewController *)[[segue destinationViewController] topViewController];
[controller setDetailItem:object];
controller.navigationItem.leftBarButtonItem = self.splitViewController.displayModeButtonItem;
controller.navigationItem.leftItemsSupplementBackButton = YES;
//THIS LINE BELOW IS WHERE I PLANNED ON SETTING THE TITLE?
controller.navigationItem.title = selectedCell;
}
}
@end
最佳答案
在细节 View Controller 的 .h
文件中创建一个 NSString
属性。然后在 prepareForSegue
中将 string
属性设置为 cell
的名称。您将从 tableViews
数据源中获取单元格标题的名称。
这就是我的意思:
在 DetailViewController.h
中插入以下内容:
@property (strong, nonatomic) NSString *titleName;
MasterViewController.m
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
DetailViewController *controller = segue.destinationViewController;
controller.titleName = [self.subjectList objectAtIndex:indexPath.row];
}
在 DetailViewController.m
的 viewDidLoad
中插入以下内容:
self.navigationItem.title = self.titleName;
看看这个教程。它应该对你有很大帮助:detail view controller
关于ios - 如何将详细 View Pane 标题设置为当前所选单元格的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30061162/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!