การเพิ่มลูกศรเล็ก ๆ ลงไปทางด้านขวาของเซลล์ใน iPhone TableView Cell


138

ควรจะง่ายพอ

ฉันมีแอพ iPhone พร้อม TableView ฉันจะเพิ่มลูกศรคลาสสิกเล็กน้อยไปทางด้านขวาของแต่ละเซลล์ได้อย่างไร

คำตอบ:


317

เพียงแค่ตั้งค่าตามลำดับaccessoryTypeทรัพย์สินของUITableViewCell

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

ในสวิฟท์ 3 ,

cell.accessoryType = .disclosureIndicator

1
โปรดทราบว่าถ้าคุณต้องการที่จะหมุนลูกศร ... คุณไม่สามารถทำมันได้ คุณต้องใช้รูปภาพ .. stackoverflow.com/questions/13836606/…
Fattie

1
สำหรับ Swift เพียงใช้ cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
Quintin Balsdon

1
cell.accessoryType = .DisclosureIndicatorทำงานในสวิฟท์เช่นกัน
Tim Vermeulen

SWIFT 3.0: cell.accessoryType = .disclosureIndicator
Brian

67

คุณสามารถทำได้ใน Interface Builder เพียงแค่คลิกคลิกที่ตารางที่ดูไปที่เซลล์ต้นแบบทางด้านขวาและทำให้มัน 1. จากนั้นคลิกที่ต้นแบบมือถือและในลักษณะที่เหมาะสมสำหรับอุปกรณ์เสริม ในเมนูแบบเลื่อนลงคลิกดัชนีการเปิดเผยข้อมูล

ตัวอย่างเครื่องมือสร้างส่วนต่อประสาน


ฉันไม่เห็นอะไรอย่าง "เซลล์ต้นแบบ" ใน xCode ของฉัน ... มีใน xCode บางรุ่นหรือไม่
Rasto

ฉันยังไม่พบ "Prototype Cells" ฉันใช้ cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; ในเซลล์ที่กำหนดเอง
Arkady

1
เฮ้ @rzv คุณสามารถขยายภาพได้อีกเล็กน้อยหรือไม่? ฉันลืมแว่นตาของฉัน
abbood

6

คุณสามารถตั้งลูกศรคลาสสิกเล็ก ๆ แบบสองทางดังนี้

1) การใช้วิธีเสริมประเภท inbuilt ของ UITableViewCell

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator]; 

2) การสร้างมุมมองอุปกรณ์เสริมด้วยภาพของตัวเอง

(I) ลากและวางรูปภาพลูกศร (เช่น circle_arrow_right.png) ในโครงการของคุณ

(II) ในวิธีการออกแบบเซลล์สำหรับทุกแถวดังต่อไปนี้

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

เขียนรหัสด้านล่าง:

if (cell ==nil) {
    cell=[[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier]autorelease];

    //For creating custom accessory view with own image
    UIImageView *accessoryView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
    [accessoryView setImage:[UIImage imageNamed:@"circle_arrow_right.png"]];
    [cell setAccessoryView:accessoryView];
    [accessoryView release];

    //Your other components on cells
     .............
    .............

 }

[ หมายเหตุ:เลือกภาพที่เหมาะสมสำหรับมุมมองและเพิ่มอุปกรณ์เสริมในเซลล์ที่คุณต้องการ เลือกรูปภาพขนาดเล็กสำหรับมุมมองอุปกรณ์เสริมเพื่อประสิทธิภาพที่ดีกว่า]



3

สำหรับลูกศรง่าย ๆ :

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

และสำหรับลูกศรแบบละเอียด:

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator;)
MR


2

วิธีอื่นในการทำเช่นนี้คือการระบุUITableViewCellAccessoryDisclosureIndicatorเมื่อคุณสร้างเซลล์ เมื่อต้องการทำสิ่งนี้คุณอาจจะจัดสรรเซลล์เริ่มต้นของคุณในวิธีการมอบสิทธิ์ tableViewCellWithReuseIdentifier (จากนั้นดำเนินการปรับแต่งและกำหนดค่าเซลล์ของคุณ)

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellAccessoryDisclosureIndicator reuseIdentifier:identifier];

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.