在我的应用中,我想将UITableViewRowAction
用于图片而不是标题文字。我使用以下方式设置背景图片:
let edit = UITableViewRowAction(style: .Normal, title: "Edit") { action, index in
self.indexPath = indexPath
self.performSegueWithIdentifier("toEdit", sender: self)
}
edit.backgroundColor = UIColor(patternImage: UIImage(named: "edit")!)
然而,图像多次出现。
如何解决此问题,只有一行图片?
答案 0 :(得分:1)
问题是用作图案的图像不适合空间,它将被重复以填充它。 获得非重复图像的一个选择是
答案 1 :(得分:0)
我写了一个jQuery.fn.dataTable.Api.register('page.jumpToData()', function(data, column) {
var pos = this.column(column, {
order: 'current'
}).data().indexOf(data);
if (pos >= 0) {
var page = Math.floor(pos / this.page.info().length);
//alert("pos: " + pos);
this.page(page).draw(false);
}
return this;
});
$(document).ready(function() {
GetNumber.num = 0;
var table = $('#UsersTable').DataTable({
select: {
style: 'single',
info: false
}
});
$('#btn').click(function() {
var GUID = GenGuid();
var name = 'name-' + GetNumber();
var rowAdded = table.row.add([
GUID,
name
]).draw();
table.$('tr.selected').removeClass('selected');
rowAdded.nodes().to$().addClass('selected');
table.page.jumpToData(GUID, 0);
var info = table.page.info();
$('#lbl').text('row ' + "\"" + name + "\"" + ' page(index): ' + info.page + ', row(index): ' + table.$('tr.selected').index());
});
$('#UsersTable tbody').on('click', 'tr', function() {
table.$('tr.selected').removeClass('selected');
$(this).addClass('selected');
});
function GenGuid() {
var d = new Date().getTime();
if (typeof performance !== 'undefined' && typeof performance.now === 'function') {
d += performance.now(); //use high-precision timer if available
}
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = (d + Math.random() * 16) % 16 | 0;
d = Math.floor(d / 16);
return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
}
function GetNumber() {
return ++GetNumber.num;
}
});
的子类来帮助你计算标题的长度,你只需要传递rowAction和图像的大小。
UITableViewRowAction
您可以查看我的项目:CustomSwipeCell了解更多详情。