سؤال

لدي إيتابيفيو ، وفي tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath, ، أريد أن أكون قادرا على الوصول إلى الإطار الذي توجد فيه الخلية المحددة.هنا هو ما كنت أحاول:

UIView *cell = tableView.indexPathForSelectedRow;

UITableViewCell *cell = (UITableViewCell *)indexPath;

أريد أن أكون قادرا على الوصول إلى العرض الذي توجد فيه الخلية المحددة.

شكرا مقدما.

هل كانت مفيدة؟

المحلول

للقيام بذلك ، استخدم:

UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

مما يمكنك الوصول إلى جميع المعلومات الموجودة على الخلية كما تفعل مع أي معلومات أخرى UIView

أي. cell.frame, cell.bound, ، إلخ.

نصائح أخرى

الوصول إلى الخلية مباشرة ليس ضروريا-نعم ، يمكنك الحصول على الخلية وإطارها عبر -cellForRowAtIndexPath:, ، ولكن عليك بعد ذلك طرح إزاحة المحتوى من إيسكرولفيو (التي الفئات الفرعية إيتابيفيو من) للحصول على الموقف الفعلي للخلية داخل حدود عرض الجدول.أفضل نهج لهذا هو طريقة إيتابيفيو -rectForRowAtIndexPath:.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top