程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> tableview-IOS/xcode-開關按鈕改變位置

tableview-IOS/xcode-開關按鈕改變位置

編輯:編程綜合問答
IOS/xcode-開關按鈕改變位置

需要一個按鈕可以切換一個元素的位置。

目前我寫的代碼:

-(IBAction)menuTouched{
// Push menu
UITableView * sideMenu = [[UITableView alloc] initWithFrame:CGRectMake(1060, 88, 63, 661)];
sideMenu.backgroundColor = [UIColor redColor];
[self.view addSubview:sideMenu];
// Animate
[UIView animateWithDuration:1.25 animations:^{
    sideMenu.frame = CGRectMake(960, 88, 63, 661);
}];
}

在點擊按鈕時 tableView可以隱藏起來,但是現在我需要按同樣的按鈕將tableView顯示出來,因此,應該怎麼實現使用按鈕切換tableView的隱藏和顯示?只要改變X坐標就可以,謝謝。

最佳回答:


1.定義一個標志位用來表示當前UITableView的顯示狀態,聲明需要用到的三個成員變量

BOOL isShow;
UITableView *sideMenu;
CGFloat posX;

2.在viewDidLoad中做初始設置

-(void)viewDidLoad {
    isShow=NO;
    //to do something...
    sideMenu = [[UITableView alloc] initWithFrame:CGRectMake(1060, 88, 63, 661)];
    sideMenu.backgroundColor = [UIColor redColor];
    [self.view addSubview:sideMenu];
}

3.你所控制UITableView的顯示只是frame的x坐標的變化,所以你可以根據開關狀態來計算這個posX,還有就是你的這個UITableview 不需要在每次點擊時來創建.把創建UITableView的代碼放到viewDidLoad函數來初始化.見上面的代碼.

-(IBAction)menuTouched{
   posX=isShow ? 1060 : 960       
   // Animate
   [UIView animateWithDuration:1.25 animations:^{
       sideMenu.frame = CGRectMake(posX, 88, 63, 661);
   }];
   isShow=!isShow;  //切換開關狀態
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved