Где я могу найти .m файл UIKit - PullRequest
1 голос
/ 03 мая 2011

В EGOTableViewPullRefresh Demo Я вижу, что он ссылается на свойство self.view и self.tableView в

EGORefreshTableHeaderView *view = [[EGORefreshTableHeaderView alloc] initWithFrame:CGRectMake(0.0f, 0.0f - self.tableView.bounds.size.height, self.view.frame.size.width, self.tableView.bounds.size.height)];

Насколько я понимаю, view и tableView - это один и тот же объект, но tableView - это тип представления, но когда я хочу увидеть файл реализации, я не могу его найти. Я вижу .h файл с помощью Option + click, но не могу найти его реализацию. Как я могу найти файл .m?

1 Ответ

2 голосов
/ 03 мая 2011

Вы не можете увидеть файл TableViewController.m, потому что эта реализация является частной, и Apple не хочет, чтобы вы могли зависеть от реализации - только от интерфейса - по двум причинам:

  1. Если вы зависите от конкретной реализации, они никогда не смогут изменить / улучшить ее, потому что им придется продолжать обеспечивать обратную совместимость в течение некоторого времени.
  2. Apple не хочет конкурентов (например, Android и т. д.), чтобы можно было легко копировать их работу.

Вам необходимо придерживаться публичной документации , которую Apple предоставляет для UITableView и друзей.Там, я думаю, вы увидите, что представление является унаследованным свойством от класса UIView, тогда как tableView - это свойство, которое связывает UITableViewController с правильным представлением для таблицы, которой он управляет.

...