Работа с одним Xib с несколькими классами

Я уже задавал вопрос здесьОбработка нескольких Xib-файлов или Исправление свертывания и разворачивания кнопки в нескольких Xib-файлах тогда я подумал прекратить использовать несколько XIB и только основной XIB с различными классами, но возможно ли это ?? Может ли кто-нибудь вести меня так, как я могу это сделать?

Пожалуйста, помогите мне исправить это

Код для UIbutton я использую

- (IBAction)btnPupl:(UIButton *)sender {
CGRect rect;
 sender.selected = !sender.selected;


if(sender.selected ){


[sender setImage:[UIImage imageNamed:@"plus_1.png"]forState:UIControlStateNormal];
    pView.hidden = true;
    eomView.hidden = true ;
    eomLable.hidden = true;

        rect = pupileomMainView.frame;
        rect.size.height = rect.size.height - eomView.frame.size.height ;
        pupileomMainView.frame = rect;



    rect = pSepLine1.frame ;
    rect.origin.y = pupileomMainView.frame.size.height + pupileomMainView.frame.origin.y  ;
    pSepLine1.frame = rect ;

    rect = pSepLine2.frame ;
    rect.origin.y = pSepLine1.frame.origin.y +6 ;
    pSepLine2.frame = rect;

    rect = ExternalMainView.frame;
    rect.origin.y = pSepLine2.frame.origin.y + 1;
    ExternalMainView.frame = rect;

    rect = eSepLine1.frame;
    rect.origin.y = ExternalMainView.frame.origin.y + ExternalMainView.frame.size.height  ;
    eSepLine1.frame = rect;

    rect = eSepLine2.frame;
    rect.origin.y = eSepLine1.frame.origin.y + 5 ;
    eSepLine2.frame = rect ;

    rect = laMainView.frame;
    rect.origin.y = eSepLine2.frame.origin.y + 1;
    laMainView.frame = rect;

    rect = laSepLine1.frame;
    rect.origin.y = laMainView.frame.origin.y +laMainView.frame.size.height  ;
    laSepLine1.frame = rect ;

    rect = laSepLine2.frame ;
    rect.origin.y = laSepLine1.frame.origin.y + 5 ;
    laSepLine2.frame = rect ;

    rect = iopMainView.frame;
    rect.origin.y = laSepLine2.frame.origin.y +1;
    iopMainView.frame = rect;

    rect = iopSepLine1.frame;
    rect.origin.y = iopMainView.frame.origin.y + iopMainView.frame.size.height ;
    iopSepLine1.frame = rect ;

    rect = iopSepLine2.frame;
    rect.origin.y = iopSepLine1.frame.origin.y + 5;
    iopSepLine2.frame = rect;

    rect = sleMainView.frame;
    rect.origin.y = iopSepLine2.frame.origin.y + 1 ;
    sleMainView.frame = rect;

    rect = sleSepLine.frame;
    rect.origin.y = sleMainView.frame.size.height + sleMainView.frame.origin.y ;
    sleSepLine.frame = rect;

    rect = sleSepLine2.frame;
    rect.origin.y = sleSepLine.frame.origin.y +5;
    sleSepLine2.frame = rect;

    rect = fundusMainView.frame;
    rect.origin.y = sleSepLine2.frame.origin.y + 1;
    fundusMainView.frame = rect;

    rect= fundusSepLine1.frame;
    rect.origin.y = fundusMainView.frame.origin.y + fundusMainView.frame.size.height ;
    fundusSepLine1.frame = rect ;

    rect= fundusSepLine2.frame;
    rect.origin.y = fundusSepLine1.frame.origin.y+5 ;
    fundusSepLine2.frame = rect ;

    rect = self.examView.frame;
    rect.size.height = rect.size.height - eomView.frame.size.height;
    self.examView.frame = rect;
}

else {

    pView.hidden = false;
    eomView.hidden = false;
    eomLable.hidden = false;

    [sender setImage:[UIImage imageNamed:@"minus_round_d1.png"]forState:UIControlStateNormal];




    rect = pupileomMainView.frame;
    rect.size.height =  rect.size.height + eomView.frame.size.height  ;
    pupileomMainView.frame = rect;

    rect = pSepLine1.frame ;
    rect.origin.y = pupileomMainView.frame.size.height + pupileomMainView.frame.origin.y +1 ;
    pSepLine1.frame = rect ;

    rect = pSepLine2.frame ;
    rect.origin.y = pSepLine1.frame.origin.y +6 ;
    pSepLine2.frame = rect;

    rect = ExternalMainView.frame;
    rect.origin.y = pSepLine2.frame.origin.y + 1;
    ExternalMainView.frame = rect;

    rect = eSepLine1.frame;

Ответы на вопрос(1)

Ваш ответ на вопрос