zoukankan      html  css  js  c++  java
  • IOS开发之TableView替换默认的checkmark为自定义图像

    直接上代码:


    On cellForRowAtIndexPath:

    UIButton*button =[UIButton buttonWithType:UIButtonTypeCustom];CGRect frame =CGRectMake(0.0,0.0, image.size.width, image.size.height);
    button.frame = frame;[button setBackgroundImage:image forState:UIControlStateNormal];[button addTarget:self action:@selector(checkButtonTapped:event:)  forControlEvents:UIControlEventTouchUpInside];
    button.backgroundColor =[UIColor clearColor];
    cell.accessoryView = button;

    checkButtonTapped:event: Method:

    -(void)checkButtonTapped:(id)sender event:(id)event
    {NSSet*touches =[event allTouches];UITouch*touch =[touches anyObject];CGPoint currentTouchPosition =[touch locationInView:self.tableView];NSIndexPath*indexPath =[self.tableView indexPathForRowAtPoint: currentTouchPosition];if(indexPath != nil){[self tableView: self.tableView accessoryButtonTappedForRowWithIndexPath: indexPath];}}

    accessoryButtonTappedForRowWithIndexPath: Method

    -(void)tableView:(UITableView*)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath*)indexPath
    {NSMutableDictionary*item =[dataArray objectAtIndex:indexPath.row];
    
    BOOL checked =[[item objectForKey:@"checked"] boolValue];[item setObject:[NSNumber numberWithBool:!checked] forKey:@"checked"];UITableViewCell*cell =[item objectForKey:@"cell"];UIButton*button =(UIButton*)cell.accessoryView;UIImage*newImage =(checked)?[UIImage imageNamed:@"unchecked.png"]:[UIImage imageNamed:@"checked.png"];[button setBackgroundImage:newImage forState:UIControlStateNormal];}


  • 相关阅读:
    C语言知识点
    VS Studio 相关知识点
    类——继承、复合、委托
    类(传入的形参为指针形式)-字符串的实现
    类(传入的形参为非指针形式)-复数的实现
    C++需要掌握的重点内容
    目标跟踪相关资料
    夏天在威海,冬天在昆明
    短时目标跟踪
    php实现中文反转字符串的方法
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3233778.html
Copyright © 2011-2022 走看看