В моем приложении у меня есть несколько небольших вложенных представлений . Когда пользователь касается подпредставления, я помещаю одно отдельное представление поверх затронутого подпредставления (того же размера), а затем анимирую это отдельное представление до полноэкранного размера.
Увеличенный вид нарисован на заказ, что создает большой проблема с этим подходом. Если я создаю увеличивающееся представление в методе viewDidLoad
основного представления и устанавливаю его фрейм на полноэкранный размер, немедленно вызывается метод представления drawRect
, и представление правильно отображается в полном объеме. размер. Если я затем использую этот вид в анимации, все будет работать, как ожидалось.
Однако, Мне нужно, чтобы этот увеличивающийся вид отличался в зависимости от того, какое подпредставление было задействовано, поэтому мне нужно каждый раз заново создавать / перерисовывать его. Проблема в том, что когда я делаю это в ответ на событие касания, метод представления drawRect
не вызывается до тех пор, пока не начнется анимация, и тогда кадр представления будет небольшим, а не полноэкранным, и поскольку в результате все отображается неправильно.
В моем коде для события касания я явно устанавливаю кадр представления в полноэкранный режим и вызываю setNeedsDisplay
перед запуском анимации, но это не имеет никакого эффекта - drawRect
просто не вызывается, пока не начнется анимация.
Есть ли способ принудительно перерисовать, @ Встроенный частное местоположение LatLon; ... В указанном классе: @Embeddable открытый класс LatLon реализует сериализуемый {частный двойной лат; частный двухместный номер; ...
В классе-владельце:
...
@Embedded
private LatLon location;
...
В указанном классе:
@Embeddable
public class LatLon implements Serializable {
private double lat;
private double lon;
...
}
Когда я пытаюсь сохранить экземпляр класса-владельца с нулевым значением для LatLon
:
org .hibernate.PropertyValueException: свойство not-null ссылается на нулевое или временное значение: com. *. location
.
Что я могу сделать, чтобы позволить этому значению быть нулевым в классе-владельце? Я пробовал сделать его Nullable
, но это не дало результата.