在我的應用程序中,我有一個包含一些textField的nib文件(視圖A)。在日期前的textField我已經把按鈕按到日曆視圖。我使用的代碼iPhone應用程序類視圖問題
-(IBAction)cal:(id)sender
{
CalendarTestViewController *calander1=[[CalendarTestViewController alloc]initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:calander1 animated:NO ];
[calander1 release];
}
也就是說fine.It帶我到日曆視圖和日曆視圖我已經寫了代碼,這樣,當有人點擊一個日期會自動移動到以前的觀點,即鑑於A.然後,當有人按A中的一個按鈕,它會帶您確認視圖(另一個類)。它清除textField中的所有數據。
我在想,而不是使用
[self.navigationController pushViewController:calander1 animated:NO ];
是否有任何其他的方式來完成這種行爲。我想保存我的數據以進行確認視圖。
這是我的日曆查看水龍頭方法。
- (void)calendarView:(KLCalendarView *)calendarView tappedTile:(KLTile *)aTile
{
// NSLog(@"Date Selected is %@",[aTile date]);
if (cat==nil) {
cat=[[FormController alloc]initWithNibName:nil bundle:nil];
NSString *st=[[NSString alloc] initWithFormat:@"%@",[aTile date]];
cat.mas=st;
[self.navigationController pushViewController:cat animated:YES];
[cat release];
[self dismissModalViewControllerAnimated:YES];
}
}
從日曆按任意時間後,我想填補文本框日返回n以前的觀點 我不希望把導航堆棧這個日曆視圖。
經過一些更改:下面是我的CalendarTestViewController.m文件的tap tile方法。
- (void)calendarView:(KLCalendarView *)calendarView tappedTile:(KLTile *)aTile
{
// NSLog(@"Date Selected is %@",[aTile date]);
if (cat==nil) {
cat=[[FormController alloc]initWithNibName:nil bundle:nil];
NSString *st=[[NSString alloc] initWithFormat:@"%@",[aTile date]];
cat.mas=st;
//[self.navigationController pushViewController:cat animated:YES];
//[cat release];
[self dismissModalViewControllerAnimated:YES];
}
}
FormController.m
- (void)calendarDidSelectDate:(NSDate *)selectedDate
{
cali.text=mas;
// set the selectedDate wherever it needs to be...
}
-(IBAction)cal:(id)sender
{
CalendarTestViewController *calendar1=[[CalendarTestViewController alloc]initWithNibName:nil bundle:nil];
calendar1.delegate = self;
[self.navigationController presentModalViewController:calendar1 animated:YES];
}
的建議意味着協議和委託定義同樣的方式我也做exactily相同。沒有顯示錯誤,但日期沒有被選擇,也沒有被填充在formController的label.text中
我同意你的建議。好吧,它會呈現我的日曆視圖。但是當我在日曆視圖中選擇我的日期時,我想回到原始視圖。所以我應該怎麼做在這種方法 – Mann
我已經做了同樣的建議,但現在我不能從我的日曆視圖中選擇任何日期。它不允許我只是沒有發生任何事情。當我選擇日期時,它會自動填充textField數據n消失 – Mann
正如我所說的,當您在日曆視圖中選擇日期時,應該以模態方式解除視圖控制器(請參閱上面我的答案中的最後一行代碼)。關於填寫文本字段...您需要填寫您選擇日期的前一個視圖中的文本字段?你是否實施了某種委託方法或通知,還是你需要幫助? –