`
jsntghf
  • 浏览: 2532784 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

自定义UITableView中Delete操作的按钮

    博客分类:
  • iOS
阅读更多

以前写过一篇文章:修改UITableView中Delete操作的默认按钮,这只是让默认的Delete按钮显示成了中文的删除按钮而已,如果想将这个删除按钮换成其他图片形式的,怎么办呢?

 

看一下下面的实现。

 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
	static NSString *RootViewControllerCell = @"RootViewControllerCell";
	UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:RootViewControllerCell];
	if(cell == nil)
	{
		cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:RootViewControllerCell]autorelease];
		
		UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
		[button setBackgroundImage:[UIImage imageNamed:@"delete.png"] forState:UIControlStateNormal];
		[button setFrame:CGRectMake(280, 10, 30, 30)];
		[button addTarget:self action:@selector(del:) forControlEvents:UIControlEventTouchUpInside];
		[cell.contentView addSubview:button];		
	}
	
	cell.textLabel.text = [array objectAtIndex:[indexPath row]];
	cell.tag = [indexPath row];
	
	NSArray *subviews = [cell.contentView subviews];
	for(id view in subviews)
	{
		if([view isKindOfClass:[UIButton class]])
		{
			[view setTag:[indexPath row]];
			[cell.contentView bringSubviewToFront:view];
		}
	}
	return cell;
}

-(void)del:(UIButton *)button
{
	NSArray *visiblecells = [self.table visibleCells];
	for(UITableViewCell *cell in visiblecells)
	{
		if(cell.tag == button.tag)
		{
			[array removeObjectAtIndex:[cell tag]];
			[table reloadData];
			break;
		}
	}
}

 

效果图:

 

分享到:
评论

相关推荐

    iOS自定义UITableView实现不同系统下的左滑删除功能详解

    本文将深入讲解如何在不同iOS系统环境下自定义UITableView的左滑删除功能。 首先,如果只需要实现基本的左滑删除功能,可以遵循UITableViewDataSource的协议,实现以下两个代理方法: 1. `- (void)tableView:...

    UItableview cell (自定义)增假,删除 移动

    在实际应用中,我们经常需要对UITableView中的Cell进行自定义,以满足各种复杂的需求,如添加、删除和移动单元格。这个主题主要涵盖以下几个方面: 1. **自定义UITableViewCell** 自定义UITableViewCell主要是为了...

    UITableView (add&delete)

    这个Demo项目“UITableView (add&delete)”显然是一个实践案例,展示了如何在UITableView中实现添加和删除功能。这里我们将详细探讨相关的知识点。 1. **UITableView的基本使用**:UITableView由两部分组成:数据源...

    ios-自定义左滑删除按钮.zip

    总之,自定义左滑删除按钮是提升iOS应用中数据列表操作体验的一种有效方式。通过深入理解UITableView的 delegate 方法和手势交互机制,开发者可以创造出符合自己应用风格的交互设计。在这个“ios-自定义左滑删除按钮...

    ios-Cell自定义滑动删除按钮.zip

    在实际应用中,自定义滑动删除按钮可以增加应用的独特性,提升用户体验。 首先,我们要了解原生的滑动删除(Swipe to Delete)功能。在UITableView中,当用户向左滑动一个Cell时,会显示一个红色的删除按钮,点击...

    UITableView删除功能(非编辑模式)更新版本

    2. **自定义单元格**:如果需要,可以自定义UITableViewCell以添加一个删除按钮或者使用手势识别器来检测滑动操作。当用户触发删除操作时,这个按钮或手势会发送一个通知给委托。 3. **实现删除方法**:在...

    iOS应用中UITableView左滑自定义选项及批量删除的实现

    当UITableView进入编辑模式,在进行左滑操作的cell的右边,默认会出现Delete按钮,如何自定义左滑出现的按钮呢? 只需要实现UITableView下面的这个代理方法。 代码如下: – (NSArray<UITableViewRowAction> *)...

    自定义删除单元格

    总之,自定义删除单元格是iOS应用中常见的一种交互方式,通过结合UITableView的代理方法和自定义视图,我们可以创建出符合产品需求的个性化删除操作。这个过程涉及到了界面设计、事件响应、动画处理等多个方面的知识...

    iOS App中UITableView左滑出现删除按钮及其cell的重用

    UITableView的编辑模式 实现UITableView简单的删除功能(左滑出现删除按钮) 首先UITableView需要进入编辑模式。...当点击出现的Delete按钮时,会调用上面这个方法,所以在这个方法里面可以实现进行删除操作

    UITableView 编辑状态下的批量选择与左滑删除等随笔

    在iOS应用开发中,`UITableView` 是一个至关重要的组件,用于展示列表数据并进行交互操作。本篇随笔将深入探讨`UITableView`的编辑模式,包括批量选择和左滑删除功能,这些都是提升用户体验的关键特性。 首先,我们...

    UITableview在编辑状态下的批量选择与左滑删除等

    此外,为了优化用户体验,你还可以根据需要自定义编辑样式,例如更改删除按钮的颜色、文字或添加其他操作。 总之,通过`UITableView`的编辑模式和`UITableViewCellEditingStyle`,我们可以轻松实现批量选择和左滑...

    ios UITableView 自定义右滑删除的实现代码

    这篇内容将深入讲解如何在iOS应用中实现自定义的UITableView右滑删除功能,以及相关的代码实现。 首先,我们来看一下需求:删除按钮带有圆角,且cell之间有间隔,cell自身也有圆角,并且左右两侧有额外的间隔。为了...

    UITableView表格的修改

    在iOS开发中,UITableView是用于显示数据列表的关键组件,它为用户提供了一种交互式的界面来浏览和操作数据。本教程将深入讲解如何对UITableView进行修改,包括增、删、移等操作,以及如何通过代理模式实现这些功能...

    tableView 左边的按钮

    在这个方法中,你可以添加自定义的`UIContextualAction`对象,每个对象代表一个滑出的按钮。 ```swift override func editActionsForRowAt(_ indexPath: IndexPath) -> [UIContextualAction]? { let deleteAction...

    UITableView编辑的相关代码

    `UITableView`的编辑功能使得用户可以对列表中的数据进行操作,如插入新项、删除已有项、选择特定项以及移动项来改变列表顺序。本篇文章将深入探讨`UITableView`的编辑模式以及如何实现这些功能。 1. **开启编辑...

    iphone UITableView划动删除的实现

    在iOS开发中,UITableView是展示数据列表的主要控件,它提供了丰富的交互功能,其中包括划动删除(Swipe to Delete)操作。这个功能允许用户通过在表格视图中的单元格上向左滑动来显示一个删除按钮,点击该按钮即可...

    uitableView 删除行

    总之,"uitableView 删除行"涉及到的核心知识点有:遵守UITableViewDataSource协议,修改数据源,使用`deleteRows(at:with:)`更新表格,以及可选的自定义手势操作。通过熟练掌握这些技术,可以创建出具有优秀用户...

    iphone开发基础UITableView的多行编辑控制

    在iOS应用开发中,苹果提供了丰富的UI控件供开发者使用,其中UITableView是极其重要的一环。本教程将深入探讨如何在iPhone开发中实现UITableView的多行编辑控制,这对于初学者来说是一个非常实用的技能。在iOS 5.0及...

    用 UITableView 进行多选的代码例子

    总之,通过开启多选模式,跟踪选择状态,以及自定义单元格显示,我们可以实现在UITableView中的多选功能。这个过程涉及到对UITableViewDataSource和UITableViewDelegate协议的理解,以及对用户交互的响应。通过阅读...

    iOS中给UITableView的侧滑删除增加多个按钮的实现方法

    默认情况下,侧滑只能展示一个删除按钮,但在实际应用中,有时我们需要添加更多的操作选项,比如“置顶”和“更多”。本文将详细介绍如何在iOS中为UITableView的侧滑删除功能增加多个按钮。 首先,我们要明确需求。...

Global site tag (gtag.js) - Google Analytics