2012-05-22 68 views
0

在界面設計師,我有一個非常簡單的設置。主視圖(表格單元視圖)具有四個子視圖,所有兄弟:UIImageView和三個UILabel s。我使用UIImageView來顯示錶格行的背景。我將它設置爲使UIImageView位於z-index樹的最後面,並將其alpha設置爲0.2以使圖像變暗 - 而UILabel正在檢查它。問題與UIImageView z-index

如果我在設計時將界面設計器中的圖像設置爲imageview,那麼一切都很好,但是如果我在設計時將圖像設置爲imageview(我從服務器接收實際圖像),那麼imageview alpha設置被忽略,圖像顯示在alpha = 1處,並且uiimageview顯示在所有標籤上。我甚至試圖使用[parent sendSubviewToBack:imageView]但它沒有幫助。

我錯過了什麼?這是我用來顯示錶格行的整個代碼。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    static NSString *CellIdentifier = @"Cell"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[NSBundle mainBundle] loadNibNamed:@"OOItemInfoCell" owner:self options:nil] lastObject]; 
     cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 
    } 

    OOXMLNode *infoNode = [searchItemList objectAtIndex:indexPath.row]; 
    [(UILabel *)[cell viewWithTag:2] setText:[itemNode elementNodeWithKey:@"title"].value]; 
    [(UILabel *)[cell viewWithTag:3] setText:[itemNode elementNodeWithKey:@"intro"].value]; 
    [(UILabel *)[cell viewWithTag:4] setText:[NSString stringWithFormat:kThemeAge, 
              [itemNode elementNodeWithKey:@"theme"].value, 
              [itemNode elementNodeWithKey:@"age"].value]]; 

    UIImageView *bgview = (UIImageView *)[cell viewWithTag:0]; 
    [bgview setImage:[itemNode imageFromKey:@"background"]]; 
    [cell sendSubviewToBack:bgview]; 

    return cell; 
} 

回答

0

好了,這是非常愚蠢的,我的......我有UIImageView的的標籤設置爲0,然後使用viewWithTag:0發現觀點。然而,父視圖也有標籤0,所以,而不是我的背景UIImageView,整個單元格被設置爲圖像(我不認爲一個表格單元格視圖會響應setImage - 但它。

我現在將UIImageView上的標籤更改爲5 - 並且所有內容都是hunky-dory。