我想從數組中獲取一個數字並將其存儲在UITableview單元格中的按鈕中。當我點擊按鈕時,我應該能夠獲得該號碼。在按鈕點擊事件中從發件人處獲得信息的正確方法是什麼UITableviewcell中的句柄按鈕事件
這是我試過的。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
UIButton *button = [[[UIButton alloc]init]autorelease];
CGRect frame = CGRectMake(180, 10, 33, 33);
button.frame = frame;
button.tag = 1001;
UIImage *image = [[[UIImage alloc]init]autorelease];
image = [UIImage imageNamed:@"icon.png"];
[button setBackgroundImage:image forState:UIControlStateNormal];
[button addTarget:self action:@selector(onIconTapped) forControlEvents:UIControlEventTouchUpInside];
button.backgroundColor = [UIColor clearColor];
[button setHidden:YES];
cell.accessoryView = button;
}
int myContactID = contact.contactID;
NSLog(@"My No. %d", myContactID);
NSNumber *mySelectedNumber = [NSNumber numberWithInt:myContactID];
UIButton *myButton = (UIButton *)[cell.accessoryView viewWithTag:1001];
for(int i = 0; i< [myContactsArray count]; i++){
if([[[myContactsArray objectAtIndex:i]valueForKey:@"RecordID"] isEqualToNumber:mySelectedNumber]){
[myButton setHidden:NO];
NSString *myString;
myString = [[myContactsArray objectAtIndex:i]valueForKey:@"MYNumber"];
[myButton setTitle:myString forState:UIControlStateNormal];
myButton.titleLabel.font = [UIFont systemFontOfSize:0];
NSLog(@"my number %@", myString);
NSLog(@"Button tag %@", myButton.currentTitle);
break;
}
else{
[myButton setHidden:YES];
}
}
}
-(void)onIconTapped:(id)sender{
}
編輯: - (無效)onIconTapped:(ID)發送方{的UIButton *按鈕=(的UIButton *)發送者;如果(button.tag == 1001){//做事} – 2012-02-19 06:49:51