2016-03-21 4 views
0

Ich wurde von einer anderen Person auf StackOverflow geholfen, Sie zeigten mir ein Beispiel, um mir Text in eine UITextView platzieren, die dann automatisch in einer UITableView zeigt. Es funktioniert gut auf seiner Seite, aber aus irgendeinem Grund passiert auf meiner Seite nichts.TextView aktualisiert TableView nicht

Heres der Code.

.h

@interface ViewController : UIViewController <UITableViewDataSource,UITableViewDelegate,UITextViewDelegate> 
@property (weak, nonatomic) IBOutlet UITableView *tableView; 
@property (weak, nonatomic) IBOutlet UITextView *txtView; 

.m

@interface ViewController()<UITableViewDataSource,UITableViewDelegate,UITextViewDelegate> { 

NSMutableArray *listArray; 
} 

@end 

@implementation ViewController 

- (void)viewDidLoad { 
[super viewDidLoad]; 
// Do any additional setup after loading the view, typically from a nib. 
} 

- (void)didReceiveMemoryWarning { 
[super didReceiveMemoryWarning]; 
// Dispose of any resources that can be recreated. 
} 
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ 

return 1; 
} 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 

static NSString *CellIdentifier = @"Cell"; 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
if (cell == nil) { 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; 
} 


cell.textLabel.text = [NSString stringWithFormat:@"%@",[listArray objectAtIndex:indexPath.row]];; 

return cell; 
} 
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ 

return listArray.count; 
} 

-(void)textViewDidChange:(UITextView *)textView{ 

listArray=[[NSMutableArray alloc]initWithArray:[textView.text componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]]]; 
[self.tableView reloadData]; 

NSLog(@"Array-- %@",listArray); 

NSLog(@"Array Count-- %lu",(unsigned long)listArray.count); 

NSLog(@"Text-- %@",textView.text); 

} 

Vielen Dank für die Hilfe.

+1

Sind alle Delegierten und Datenquelle für den Tableview und Textview-Setup korrekt im xib/Storyboard? –

+0

Welchen Delegaten muss ich verbinden? – vype

+0

Gehen Sie zu XIB, verbinden Sie Tabellenansicht mit Delegaten und Datenquellen. Sie können den Haltepunkt auch hinzufügen, um zu überprüfen, ob Tabellensichtmethoden funktionieren oder nicht. –

Antwort

0

Sieht aus wie Ihr Problem ist Ihre Delegierten Setup. Sie können in Ihrem viewDidLoad es programmatisch tun wie so:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
// Do any additional setup after loading the view, typically from a nib. 
    self.tableView.delegate = self; 
    self.tableView.dataSource = self; 
    self.txtView.delegate = self; 
} 
+0

Danke funktioniert perfekt krank Stellen Sie sicher, ich klicke auf den Häkchen, es sagt nur, ich muss noch 30 Sekunden warten – vype

+0

Froh, es hat geklappt –

Verwandte Themen