1. 程式人生 > >iOS中ViewControl 中新增 ViewControl

iOS中ViewControl 中新增 ViewControl

ViewControl 中新增 ViewControl

今天正好遇到一個小困惑就是如果在ViewControl 中新增 ViewControl,經過查詢得知原來就是直接 addSubview 其ViewControl.view 即可
下面是相關的程式碼,可以在oneVC中先設定個顏色可方便看出其效果

OneViewController *oneVC = [OneViewController new];

UIView *myView= oneVC.view;
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];

// 動畫選項的設定
animation.duration = 3; // 持續時間
animation.repeatCount = 1; // 重複次數

// 起始幀和終了幀的設定
animation.fromValue = [NSValue valueWithCGPoint:myView.layer.position]; // 起始幀
animation.toValue = [NSValue valueWithCGPoint:CGPointMake(0, 0)]; // 終了幀

// 新增動畫  
[myView.layer addAnimation:animation forKey:@"remove"];

[self.view addSubview:oneVC.view];

iPhone開發 UITableView程式碼實現例項

http://mobile.51cto.com/iphone-278855.htm


iPhone開發 UITableView程式碼實現例項是本文要介紹的內容,介紹了UITableView的基本操作,以小例項實現,我們來看內容。
 
1、前題條件

1.1 UITableView不能直接載入到窗體中,窗體中首先要載入一個UIView控制元件,然後才可以新增UITableView

1.2 UITableView需要繼續兩個協議<UITableViewDelegate,UITableViewDataSource>

兩個協議的方法為:

--行的數量:

  1. -(NSInteger) tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section   
  2. {  
  3.  return [tableArray count];  
  4. }  
  5. --行的定義  
  6. -(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  
  7. {  
  8.  static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";  
  9.     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:  
  10.                              SimpleTableIdentifier];  
  11.     if (cell == nil)  
  12.  {  
  13.   //預設樣式  
  14. cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  
  15.                                    reuseIdentifier: SimpleTableIdentifier] autorelease];  
  16.  }  
  17.  //文字的設定  
  18.  NSUInteger row=[indexPath row];  
  19. cell.textLabel.text=[tableArray objectAtIndex:row];  
  20.  return cell;  

2、新增UIView

  1.  UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320,260)];  
  2. //自定識別頭及高度  
  3. view.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleHeight;  
  4. view.backgroundColor = [UIColor blueColor];  
  5. //將view新增到主窗體  
  6. [self.view addSubview:view]; 

3、新增UITableView

  1. UITableView  *table1=[[UITableView alloc] initWithFrame:CGRectMake(0, 0.00, 300, 250)];  
  2. table1.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleHeight;  
  3. table1.backgroundColor=[UIColor redColor];  
  4. //新增到view窗體上  
  5. [view addSubview:table1];  
  6. table1.delegate=self;  
  7. table1.dataSource=self

4、取消點選動畫

  1. [tableView deselectRowAtIndexPath:indexPath animated:YES]; 

5、滾動路徑標識,直至指數連續接收器在螢幕上的特定位置

  1. - (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UITableViewScrollPosition)scrollPosition animated:
  2. (BOOL)animated Parameters   

indexPath

索引路徑標識在其行的索引,其部分指標表檢視行。

scrollPosition

一個常數,在接收標識表檢視行(上,中,下)的相對位置滾動時結束。

animated

是如果你要動畫在位置改變,沒有是否應立即生效。

例項程式碼:

  1. float height = 216.0;  
  2. CGRect frame = m_pTableView.frame;  
  3. frame.size = CGSizeMake(frame.size.width, frame.size.height - height);  
  4. [UIView beginAnimations:@"Curl"context:nil];//動畫開始     
  5. [UIView setAnimationDuration:0.30];     
  6. [UIView setAnimationDelegate:self];    
  7. [m_pTableView setFrame:frame];    
  8. [m_pTableView scrollToRowAtIndexPath:selectedIndexPath atScrollPosition:UITableViewScrollPositionMiddle animated:YES];  
  9. [UIView commitAnimations];  

6、獲取選中的列,如圖所示:

iPhone開發 UITableView程式碼實現例項

程式碼如下:

  1. for (NSInteger i = 0; i < [[peopleTableView visibleCells] count]; i++)   
  2. {  
  3. UITableViewCell *cell = [[peopleTableView visibleCells] objectAtIndex:i];  
  4. if (cell.accessoryType == UITableViewCellAccessoryCheckmark) //將勾選的人員新增到列表中  
  5. {  
  6. Item *item = (Item *)[NextPeopleList.SelectList objectAtIndex:i];  
  7. [peopleList addObject:item];  
  8. isCheck = TRUE;  
  9. }  

7、Cell將要顯示時事件

  1. - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath  
  2. {  
  3. if (indexPath.row % 2 == 0) {  
  4. cell.backgroundColor = DarkColor;  
  5. }else {  
  6. cell.backgroundColor = LightColor;  

小結:iPhone開發 UITableView程式碼實現例項的內容介紹完了,希望本文對你有所幫助!


http://mobile.51cto.com/iphone-278855.htm