Nano Hash - криптовалюты, майнинг, программирование

Изменить точку привязки объекта UIKit программно?

Я знаю, что вы можете изменить точку начала/привязки объекта UIKit в построителе интерфейса, но как я могу сделать это программно? Или мне нужно просто изменить координаты положения, чтобы они соответствовали точке привязки по умолчанию?


Ответы:


1

UIViews не имеют концепции точки привязки (в отличие от CALayers). Вы можете расположить их, используя свойство frame или свойство center. Интерфейсный Разработчик подделывает точку привязки и фактически сохраняет координаты кадра UIView в файле пера.

15.11.2011

2

Если вы хотите изменить привязку, просто #import <QuartzCore/QuartzCore.h> а затем установите привязку вашего представления:

[[aView layer] setAnchorPoint:CGPointMake(0.5f, 0.5f)];

А ссылка ниже — это документ о слое, который может вас заинтересовать:
http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreAnimation_guide/Articles/Layers.html

15.11.2011
  • Я только что попробовал это, и мне не удалось центрировать точку привязки. Я сделал буквально то, что вы сделали в вашем примере выше, за исключением того, что я изменил aView на свой UITextField. Любые идеи? 15.11.2011
  • Каждый UIView поддерживается CALayer, но у вас возникнут проблемы, если вы попытаетесь смешать позиционирование UIView и CALayer. Как вы видели, все будет вести себя не так, как вы ожидаете. Лучше всего придерживаться позиционирования UIView со свойством frame или center и соответствующим образом настроить координаты. 15.11.2011
  • Значение точки привязки по умолчанию — (0,5, 0,5), она центрирована. Документ, который я дал, может вам помочь, и то, что сказал @Robin, правильно. :) Кстати, чего вы хотите, центрируя точку привязки UITextField? Вы можете просто установить фрейм (который относится к его супервиду), чтобы сделать макет. 16.11.2011
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..