2012-11-17 23 views
-1
  UIButton *btnUserImage = [UIButton buttonWithType:UIButtonTypeCustom]; 
     [btnUserImage setFrame:CGRectMake(5, 5, 80, 60)]; 
     [btnUserImage setBackgroundColor:[UIColor clearColor]]; 
     [btnUserImage setTag:indexPath.row]; 
     [btnUserImage addTarget:self action:@selector(btnUser_clicked:) forControlEvents:UIControlEventTouchUpInside]; 
     [cell.contentView addSubview:btnUserImage]; 

您好,我有這一個方法,我想實現,但問題是btnuserimage標籤不工作,因爲指數path.row是另一個.m文件。最底層的代碼就是我想要實現的代碼。我必須在另一個控制器中使用上面的方法才能工作。有關如何處理的任何建議或提示。基本上我問的是最底層的代碼需要被實現到另一個視圖控制器,這樣上面的代碼才能工作。如何nsindex從一個視圖控制器搶在實現它的另一個

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

回答

0

您可以創建一個SharedClass並傳遞所有需要的值。 或 您可以創建一個全局變量並在兩個類中使用它。

但我會建議去與sharedClass。

並且爲了將來的參考,如果有東西被動態地改變,那麼你可以去通知。

0

您可以像'波紋管'一樣在'一個'視圖控制器中添加一個公共方法。並稱你爲另一個視圖控制器。

// in OneViewController a public method 
- (void)addButtonWithTag:(NSInteger)tag 
{ 
    [btnUserImage setTag:tag]; 
} 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath  *)indexPath { 
    ... 
    [oneViewController addButtonWithTag:indexPath.row]; 
    ... 
} 
相關問題