在編寫QQ主界面的心得

  在學了這麼多的UI後想作一個qq主界面第一次作不是很好.可是我也注意到層次如何分配的問題。由於中間有一個tableView如何添加這個視圖了,在我第一次犯了一個這樣的錯誤,不是我想自定義一個TabBar我一開始試了讓tableViewController成爲根控制器可是在添加TabBar的時候他是活動的這樣是不行的,後來嘗試了用UIViewController爲根控制器雖然能夠解決自定義TabBar的移動的問題,可是在控制器的View添加tableView時tableView繼承滑動視圖的屬性就沒有了只能限制在試圖控制器view上不能滑動。以上的兩種都是不能夠的。最後我用UITabBarConroller爲控制器,讓它去管理各類視圖的控制器,處理好各個視圖控制器的位置,這是向裏面添加一個控制器的代碼:數組

 TableViewController *tableView=[[TableViewController alloc]init];對象

    UINavigationController *firstNavigation=[[UINavigationController alloc]initWithRootViewController:tableView];blog

    [firstNavigation.navigationBar setBackgroundImage:[UIImage imageNamed:@"65329381"] forBarMetrics:UIBarMetricsCompact];繼承

。。。。。。。。而後用數組管理各個UINavigationController的對象便可(做爲新手常常寫成建立的視圖)。事件

//__________________新手注意的問題___________________________________________________________圖片

1.在自定義TabBar 的時候背景圖片在最下面按鈕在最上面。可是爲何層次沒有問題會遇到按鈕不能點擊且不能響應相應的事件,這是由於你的UIbutton是添加在UIimageView上,它只是個View不會響應事件的。這是你的打開UIimageView的與用戶的交互代碼。imageView.userInteractionEnabled=YES;it

2.如何設置圓形的按鈕;io

button.layer.cornerRadius = width/2.0;table

 button.layer.masksToBounds = width/2.0;方法

設置按鈕圓角半徑和界面邊界的寬/2.0便可,用這個能夠得到各類button的形狀,因除的數不一樣而異。

//獲取button的寬

NSInteger width=button.frame.size.width;

3.如何設置透明的UINavigationController,有不少的界面爲了保證界面的一致性一般吧UINavigationController設置透明,只要實現這個UINavigationController風格的代碼

[firstNavigation.navigationBar setBackgroundImage:[UIImage imageNamed:@"65329381"] forBarMetrics:UIBarMetricsCompact];這個UIBarMetricsCompact的風格,圖片能夠隨便的添加。

4.在設置tableView的位置是我是習慣在- (void)viewDidLoad這個方法裏面設置他的位置,可是不管怎麼設置都沒有改變,(多是已經添加了tableView的視圖吧默認不變吧,不過應該等默認的初始化設置後進行(不太肯定何時),我在tableviewcontroller的tableview加載後(viewdidload中有時不起做用)再設置就生效了)

咱們應該在視圖的出現以後在進行設置tableView的位置,這樣纔有效

- (void) viewDidAppear:(BOOL)animated{

    [super viewDidAppear:animated];

     self.tableView.frame=CGRectMake(0, 38, 375, 1000);

相關文章
相關標籤/搜索