Как удалить все из superView, а не только последний элемент? - PullRequest
0 голосов
/ 12 апреля 2011

В моем приложении мне приходилось рисовать определенные флажки одновременно, и я использовал одну функцию, чтобы добавить их все.Теперь, когда пользователь нажимает один из них, все эти флажки должны быть удалены из суперпредставления, и в настоящее время он просто удаляет последний.Также у меня есть проблема, чтобы распознать те флажки, как, например, какой из них нажал.я знаю, что это должно быть сделано через свойство Tag, но не знаю, как именно это должно быть реализовано.Любые предложения.

Ответы [ 2 ]

0 голосов
/ 12 апреля 2011

Для определения «флажка» или, лучше сказать, любого представления в методе действия:

- (void)someActionHandler:(id)sender
{
  UIView *actionOriginView = (UIView *)sender;
  NSLog(@"this action came from view:%d", actionOriginView.tag);
}

Для присвоения тега вы можете использовать IB или внутри своего кода при создании экземпляра;

UIView *myFunkyView = [[UIView alloc] initWithFrame:CGRectZero];
myFunkyView.tag = 1337;

Для удаления группы представлений из вашего суперпредставления - допустим, их тег установлен на 10 - 15;

for (int i=10;i <= 15;i++)
{
  UIView *childView = [superview viewWithTag:i];
  [childView removeFromSuperview];
}
0 голосов
/ 12 апреля 2011

Удаление всех подпредставлений

int numberOfSubviews = [[yourView subviews] count];

    for(int i=0;i<numberOfSubviews-1;i++
    {
      [[youView subviews]objectAtIndex:i]removeFromSuperView];
    }

// это оставит флажок, который вы добавили наконец .... для первого, который останется циклом из 1 to numberOfSubview s ....

Использование свойства тега ... при создании объектов-флажков используйте

checkBoxObject.tag = i;

// Я рассматриваю i как число циклов, которое вы используете в цикле добавить флажки.

тогда всякий раз, когда вам нужен объект checkbox

[yourViewonwhichYouAddedCheckBox viewWithTag:<your tag >];

Спасибо

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