導航控制器和表視圖密不可分,在實際的應用程序中實現導航控制器,幾乎總要實現至少一個表,因為導航控制器的強大之處在于它能夠處理復雜的分層數據,在iphone上,連續的表視圖是表示分層數據最理想的分層方式。
撫寧網站建設公司創新互聯建站,撫寧網站設計制作,有大型網站制作公司豐富經驗。已為撫寧上千余家提供企業網站建設服務。企業網站搭建\成都外貿網站建設公司要多少錢,請找那個售后服務好的撫寧做網站的公司定做!
導航控制器使用內置動畫在視圖之間順利移動,無需編寫歷史紀錄控制,導航控制器會自動處理Back按鈕時間,讓用戶“岀棧”。
UINavigationController是構建分層應用的主要工具,與UITabBarController很類似,但是前者是以棧來實現功能,關于棧,我們并不陌生,遵守先進后出的原則,向棧中添加一個對象為入棧,從棧中刪除一個對象叫出棧。
UINavigationController是構建分層應用程序的主要工具。本次的應用程序將由一個導航控制器和六個子控制器組成。
如何把表視圖中的數據寫入子表中;
.如何把表視圖中的數據寫入可以讀取甚至可以編輯詳細數據的內容視圖中;
.如何通過表清單來從多個值中進行選擇;
.如何通過編輯模式從表視圖中刪除行。
下面是觸摸頂級試圖第一行Disclosure Butttons時出現的界面(第一個視圖右側的擴展圖標被稱為是擴展指示器,用于告知用戶觸摸這一行將切換到另一個表視圖),其他幾個試圖都是如此。
在編輯過程中需注意以下幾點:
1)列表只顯示來自數組的多個行,因此需要聲明一個數組實現表視圖時需要遵從兩個協議UITableViewDelagate和UITableViewDataSource,類需要這兩個協議來充當表視圖的委托和數據源,然后聲明一個數組用于放置將要顯示的數據。
@interface Disclosure_Buttons : UIViewController<UITableViewDelegate,UITableViewDataSource>
{
NSArray *listData;
}
2)方法返回數組計數個數:
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [listDatacount];
}
3)方法獲取一個可重用單元,如果單元不存在則創建一個新的單元。然后從對應查詢的數組中獲取對象,將單元的文本設置成控制器標題并返回單元
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
staticNSString*DisclosureCellIdentifier =@"DisclosureCellIdentifier";
UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:DisclosureCellIdentifier];
if (cell ==nil)
{//創建一個新的單元
cell=[[UITableViewCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:DisclosureCellIdentifier];
}
//對應查詢數組中獲取的對象,將單元文本設置成控制器標題并返回單元
NSUInteger row=[indexPathrow];
NSString *rowData=[listDataobjectAtIndex:row];
cell.textLabel.text=rowData;
cell.accessoryType=UITableViewCellAccessoryDetailDisclosureButton;
return cell;
}
4) tableView:didSelectRowAtIndexPath:方法是用戶單擊某行后調用的方法,如果在調用時需要觸發信息展開,則調用此方法
5)tableView:editingStyleForRowAtIndexPath
方法是表視圖可以查詢指定行是否可以進行刪除,是否可以將新行插入到指定位置。
通過返回UITableViewEditingStyleNone表示不支持插入和刪除行。
6)從屬性表中加載數據
-(void)viewDidLoad{
NSString *path=[[NSBundlemainBundle] pathForResoure:@"computers" ofType:@"plist"];
NSMutableArray *array=[[NSMutableArrayalloc]initWithContentsOfFile:path];
self.list=array;
[arrayrelease];
[superviewDidLoad];
}
7)UITableViewCellEditingStyleNone:不允許被編輯
UITableViewCellEditingStyleDelete:允許刪除
UITableViewCellEditingStyleInsert:允許插入
8)encodeWithCoder:方法把對象編碼為歸檔文件
initWithCoder:方法從歸檔文件中創建新的對象
9)UITextFieldDelegate:通過遵循這個協議,當用戶對某個字段做出修改時,會得到通知并保存修改。
文章名稱:iOS導航控制器和表視圖
URL標題:http://vcdvsql.cn/article46/gdgihg.html
成都網站建設公司_創新互聯,為您提供手機網站建設、自適應網站、電子商務、、面包屑導航、小程序開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯