Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITableViewCell渐变层覆盖删除按钮_Ios_Objective C_Uitableview_Cagradientlayer - Fatal编程技术网

Ios UITableViewCell渐变层覆盖删除按钮

Ios UITableViewCell渐变层覆盖删除按钮,ios,objective-c,uitableview,cagradientlayer,Ios,Objective C,Uitableview,Cagradientlayer,我用这个答案为表格视图单元格创建渐变背景 问题是,当我做滑动删除手势时,渐变层似乎覆盖了删除按钮 有办法解决这个问题吗 我想您应该在UITableViewCell中插入渐变层。我认为在UITableViewCell的contentView中插入可以解决您的问题。添加此选项可以解决我的问题 - (void)layoutSubviews { // resize your layers based on the view's new bounds self.gradientLayer

我用这个答案为表格视图单元格创建渐变背景

问题是,当我做滑动删除手势时,渐变层似乎覆盖了删除按钮

有办法解决这个问题吗


我想您应该在UITableViewCell中插入渐变层。我认为在UITableViewCell的contentView中插入可以解决您的问题。

添加此选项可以解决我的问题

- (void)layoutSubviews {
    // resize your layers based on the view's new bounds
    self.gradientLayer.frame = self.bounds;
}

我刚刚尝试了[self.contentView.layer insertSublayer:self.gradientLayer atIndex:0];这并没有什么不同:(一种解决方法是在显示操作按钮时隐藏gradientLayer。此外,还应该有一种方法来更改项目的z顺序。insertSublayer索引为0,如果此索引为1,并且单元格中的所有其他项目都位于z位置2等的视图中,则该方法可能会起作用。您可以将渐变作为覆盖视图移动并捕获滑动手势,这是一个非常复杂的解决方法
- (void)layoutSubviews {
    // resize your layers based on the view's new bounds
    self.gradientLayer.frame = self.bounds;
}