위임 자습서를 광범위하게 검색했지만 제대로 작동하지 않았습니다. 여기 이야기와 코드가 있습니다. DetailViewController에는 UITextField 및 UIButton이 있습니다. 당신이 버튼을 누르면 간단한 PricelistViewController 테이블로 연결됩니다. 해당 테이블의 행을 누르면 행의 제목에서 첫 번째보기까지의 텍스트가 반환되어 텍스트 필드에 삽입됩니다. 그러나 그렇지 않습니다.iOS 위임이 작동하지 않습니다. (코드 내부) : 다른보기에서 UITableView에서 UITextField로 데이터를 전송할 수 없습니다.
PricelistViewController.h (제 뷰) :
@class PricelistViewController;
@protocol PricelistViewControllerDelegate <NSObject>
@required
//- (void)theSaveButtonOnThePriceListWasTapped:(PricelistViewController *)controller didUpdateValue:(NSString *)value;
- (void)theSaveButtonOnThePriceListWasTapped:(NSString *)value;
@end
@interface PricelistViewController : UITableViewController
@property (nonatomic, weak) id <PricelistViewControllerDelegate> delegate;
@property (retain, nonatomic) NSMutableArray * listOfSections;
@end
PricelistViewController.m이있는 코드 DetailViewController.h (이다
@synthesize delegate;
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDictionary *dictionary = [listOfSections objectAtIndex:indexPath.section];
NSArray *array = [dictionary objectForKey:@"ProductSections"];
NSString *selectedProduct = [array objectAtIndex:indexPath.row];
[self.delegate theSaveButtonOnThePriceListWasTapped:[NSString stringWithFormat:@"%@", selectedProduct]];
[self.navigationController popViewControllerAnimated:YES];
}
여기서 코드는 텍스트 필드와 버튼이있는 첫 번째보기) :
DetailViewController.m#import "PricelistViewController.h"
@interface DetailViewController : UIViewController <UITextFieldDelegate, PricelistViewControllerDelegate>
(I 필드에 텍스트를 변경하려고 어떻게 I) :
- (void)theSaveButtonOnThePriceListWasTapped:(NSString *)value
{
NSLog(@"Text, sent here: %@", value);
NSLog(@"Text was sent here.");
self.detailDescriptionLabel.text = value;
}
detailDescriptionLabel는 텍스트를 표시 할 용의 UITextField입니다.
누군가 코드를 확인하고 도움을 줄 수 있습니까? 나는이 문제에 대해 이틀 동안 운이 없다!
안녕하세요 Matt, 의견에 감사드립니다. 클래스 선언이 없으면 컴파일러에서 'Expected a type' 오류를 반환하고 예, ARC를 사용하고 있습니다. 배열의 속성을 강하게 변경했습니다. 행운은 없습니다. PriceListViewController의 ViewDidLoad에서 배열을 초기화합니다. 'listOfSections = [[NSMutableArray alloc] init]; ' – kovallux
'NSDictionary * dictionary = [listOfSections objectAtIndex : indexPath.section]; NSArray * array = [사전 objectForKey : @ "ProductSections"]; NSString * selectedProduct = [배열 objectAtIndex : indexPath.row];' – kovallux