2011-07-27 65 views
6

Làm cách nào để thay đổi vị trí nút xóa khi sử dụng UITableViewCellEditingStyle từ phải sang trái?Thay đổi vị trí của UITableViewCellEditingStyle

+5

Nếu bạn đang sử dụng [chuẩn UITableViewCell với phong cách di động tiêu chuẩn khác nhau] (http://developer.apple.com/library/ios/#documentation/ UIKit/Reference/UITableViewCell_Class/Reference/Reference.html), bạn không thể. Bạn sẽ cần phải phân lớp và làm của riêng bạn (cách dễ nhất là thông qua một UITableViewCell instantiated từ một XIB). –

Trả lời

0

Bạn có thể phân lớp UITableViewCell, thêm nút xóa và thêm uiview ở đầu nút trong chế độ xem nội dung của ô. Mã sẽ như thế này cho thêm subviews trong lớp tế bào

[self.contentView addSubView:button]; 
[self.contentView insertSubview:view aboveSubview:button]; 

Add swipe cử chỉ đến UIView làm swipe đi đúng hướng. Khi nhấn nút, bạn có thể thêm một đại biểu để gửi lại cho bộ điều khiển để xóa ô và tải lại bảng. Bạn cũng có thể làm điều đó với sự giúp đỡ của tập tin nib bằng cách đặt nút xóa đầu tiên và sau đó uiview. Hy vọng điều đó sẽ hữu ích.

0

Không có phương pháp tích hợp để thay đổi vị trí nút Xóa trong UITableViewCell. Bạn nên tạo một lớp tùy chỉnh là lớp con của UITableViewCell và tạo giao diện người dùng của ô bằng XIB hoặc mã bất cứ điều gì bạn chọn và cũng cung cấp các cửa hàng và hành động thích hợp cho các phần tử ô.

0

Bạn không thể thay đổi vị trí của nút xóa gốc. Bạn có thể phân lớp UITableViewCell và tự tạo nút, đặt nó (ẩn) ở cạnh trái và trong các nút gọi lại, di chuyển nội dung ô sang phải.

0

Bạn có thể sử dụng nút tùy chỉnh trong bảng phân cảnh/xib và sau đó sử dụng phương pháp [* buttonObject addTarget] để biết sự kiện nhấp chuột. Đây là cách dễ nhất để tùy chỉnh chế độ xem bảng mà không sử dụng các phụ kiện gốc.

1

Bạn không thể thay đổi vị trí của nút xóa gốc Ở vị trí nút xóa mặc định sử dụng nút tùy chỉnh làm cho chúng ẩn. Khi nhấp vào nút chỉnh sửa, bạn có thể nhìn thấy nút này. giải quyết vấn đề của bạn viết mã này trong phương pháp cellForRowAtIndexPath bạn

UIButton*Delete_btn = [UIButton buttonWithType:UIButtonTypeCustom]; 
     [Delete_btn addTarget:self action:@selector(Delete:) forControlEvents:UIControlEventTouchUpInside]; 
     Delete_btn.frame = CGRectMake(05, 10, 56, 56); 
     [Delete_btn setBackgroundImage:[UIImage imageNamed:@"delete_btn.png"] forState:UIControlStateNormal]; 
     [cell.contentView addSubview:Delete_btn]; 
Các vấn đề liên quan