MonoTouch: Как изменить местоположение элемента управления во время выполнения? - PullRequest
0 голосов
/ 14 декабря 2011

Я хочу изменить местоположение UIImageView во время выполнения.В IB я могу изменить координату X, чтобы переместить ее.Итак, я попробовал этот код:

imageView.Frame.X = 25;

Но это не имеет никакого эффекта.Зачем?У меня такая же проблема и для других элементов управления.Как заставить это работать?

Ответы [ 3 ]

3 голосов
/ 14 декабря 2011

Свойство Frame является типом значения, это означает, что если вы делаете:

imageView.Frame.X = 25

, то, что вы на самом деле делаете:

var temp = imageView.Frame;
temp.X = 25;

Значение никогда не достигает imageView.Для типов значений вы должны назначить полностью сконструированный тип, например:

var current = imageView.Frame;current.X = 25;imageView.Frame = current;

0 голосов
/ 25 ноября 2013

// Код довольно прост и не требует пояснений

dispatch_async (dispatch_get_main_queue (), ^ {

    self.myimageView.frame = CGRectMake(140, 70, 140, 128);


});

С помощью> dispatch_async (dispatch_get_main_queue (), ^ {Я сделал код для запуска в основной очереди, а не в фоновом режиме.

0 голосов
/ 14 декабря 2011

Свойство Frame является типом значения, это означает, что если вы сделаете:

imageView.Frame.X = 25

, что вы на самом деле делаете:

var temp = imageView.Frame;temp.X = 25;

Значение никогда не достигает imageView.Для типов значений необходимо назначить полностью сконструированный тип, например:

var current = imageView.Frame;current.X = 25;imageView.Frame = current;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...