У меня есть UIlabel и включает в себя небольшую настройку. и эта метка используется во многих экранах моего приложения. Я попытался как с подклассом, так и с категориями в прототипе. , который является предпочтительным для использования в этом случае. подклассов или категорий.который я должен выбрать, подклассификация или категории
ответ
Вы должны использовать Subclassing
вместо category
. Category
следует использовать, если вы хотите изменить поведение каждого экземпляра класса, тогда как Subclassing
следует использовать, если вы хотите изменить поведение конкретного экземпляра или объектов.
Категория вредна также в некоторых случаях, поскольку вы манипулируете существующим классом, поэтому лучше использовать Subclassing
, где это возможно!
Сценарий - 1: Если вы хотите изменить что-то, что происходит как часть вызовов структуры в течение жизненного цикла объекта пользовательского интерфейса? - используйте подкласс.
Сценарий - 2: Если вы хотите, чтобы какое-то приложение было расширено, что-то, что в дополнение к существующей функциональности, и вам все равно, станет ли это доступным для всех экземпляров этих ранее существовавших экземпляров класса framework? - использовать категории.
- 1. Memcached против APC, который я должен выбрать?
- 2. openMP кусок размером, который я должен выбрать?
- 3. ОТДЫХ ИЛИ МЫЛО? Я должен выбрать один
- 4. Что я должен выбрать - JSON или SQLite?
- 5. AMQP или MQTT, который я могу выбрать?
- 6. DATETIME или timestamp, который я должен предпочесть?
- 7. BlackBoxExplanation или GlassBoxExplanation, который я должен использовать?
- 8. Который я должен закрыть, PreparedStatement или Connection?
- 9. Который я должен использовать: Microsoft.Extensions.Configuration ИЛИ Microsoft.Framework.ConfigurationModel
- 10. Который я должен уловить: Hyak.Common.CloudException или Microsoft.WindowsAzure.CloudException?
- 11. therubyracer или nodejs, который я должен использовать?
- 12. Какой DataType я должен выбрать?
- 13. laravel или просвет, который выбрать?
- 14. Что такое минимальный SDK, и который я должен выбрать
- 15. Какой urllib я должен выбрать?
- 16. NAnt или MSBuild, который я должен использовать в среде svn?
- 17. Какую связь я должен выбрать: объединение или агрегация?
- 18. Какой подход я должен выбрать?
- 19. Какой DB я должен выбрать?
- 20. Подклассификация uitableviewcontroller
- 21. При написании категории, должен ли я использовать самостоятельно или название категории
- 22. , который я должен выбрать в MongoDB, создать новую коллекцию или Встроить Collection
- 23. Должен ли я выбрать reactjs + f7 или f7 + vue.js?
- 24. Какой я должен выбрать Sencha touch 2 или Phonegap
- 25. Должен ли я выбрать статики клетки или динамический прототип
- 26. Должен ли я выбрать MySQL или MongoDB для этого дизайна
- 27. Какой я должен выбрать Entity Framework или ADO.Net?
- 28. Подклассификация UICollectionView
- 29. Подклассификация UIView или составление с UIView
- 30. подклассификация nssegmentedcontrol?
Я думаю, что категории и объяснения подкласса u указаны наоборот. – sanjayzed
игнорировать мой предыдущий комментарий. Прости. – sanjayzed