2015-10-16 85 views
0

我有一個視圖,其中包含一個pickerView和一個TextView。
當我呈現我的視圖時,滾動越來越困難。
經過4-5次的觀看後,它卡住了越來越多,最終在滾動UIPickerView時完全凍結。 PickerView擁有4個組件,其中3個具有大約50個值。用戶界面越來越凍結,而滾動UIPickerView,UITableView ios8,ios9

請檢查下面我PickerView代碼:

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 
{ 
return 4; 
} 

// The number of rows of data 
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent: (NSInteger)component 
{ 
    return [[_pickerData objectAtIndex:component] count]; 
} 


- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent: (NSInteger)component 
{ 
    switch (component){ 
     case 0: 
      return 150.0; 
     case 1: 
      return 50.0f; 
     case 2: 
      return 20.0f; 
     case 3: 
      return 50.0f; 
    } 
    return 0; 
} 
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{ 
    UILabel* tView = (UILabel*)view; 
    if (!tView){ 
     tView = [[UILabel alloc] init]; 
     tView.font=[UIFont fontWithName:@"ArialNarrow" size:22]; 
     tView.textAlignment=NSTextAlignmentCenter; 
     tView.text=_pickerData[component][row]; 
     // Setup label properties - frame, font, colors etc 



     } 

     return tView; 
    } 

請幫助我。

回答

0

感謝您的幫助加里。

我已經解決了這個問題。問題與線程有關。當應用程序凍結時,我通過暫停應用程序來發現問題。在左側,我們可以看到正在運行的線程。從那裏我發現了所謂的線程。這讓主線程感到不安,這就是爲什麼應用程序被凍結的原因。

0

如果你只想顯示textpickerView那麼我建議你使用這種方法。

- (NSAttributedString*) pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)component { 

    NSAttributedString *str = [[NSAttributedString alloc] initWithString:_pickerData[component][row] attributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIColor whiteColor], NSForegroundColorAttributeName, [UIFont fontWithName:@"ArialNarrow" size: 22], NSFontAttributeName, nil]]; 
    return str; 
} 

使用

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view 

代替的可以是lable ALLOC多次。

希望它能幫助你。

+0

Garry,謝謝你的幫助。我試過了,但我又遇到了同樣的問題。 – priya

+0

檢查你的前導概念,可能是後臺線程上的一些UI操作工作。 – Garry

+0

如果你不介意,你能告訴我如何調試線程問題?我在iOS方面經驗不足。這對我很有幫助。 – priya