suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie kann man vorhandene Steuerelemente im iOS-Storyboard einfach ersetzen?

Verwendung des falschen Steuerungstyps in einem bestehenden Projekt:

Wie können wir UITextFieldUITextField替换成UILabel bequem durch UILabel

ersetzen, ohne ein neues Steuerelement erstellen (ziehen) zu müssen?

DankeChris
für die Aufklärung der Verwirrung;LabelWenn es viele Schnittstellen gibt, können Sie das

-Tag angeben und im Code suchen, um das Steuerelement schnell zu finden.

🎜
巴扎黑巴扎黑2734 Tage vor1089

Antworte allen(2)Ich werde antworten

  • 淡淡烟草味

    淡淡烟草味2017-06-24 09:46:22

    右键xib或storyboard, Open As -> Source Code . 找到textField,修改为label. 再用interface builder打开就可以了, 修改后会保留原来的约束和Frame.

    Antwort
    0
  • 为情所困

    为情所困2017-06-24 09:46:22

    法一:
    写一个类CustomTextField,继承自UITextField,然后在可视化界面让你的所有UITextField控件继承它

    CustomTextField中禁掉所有触摸事件,基本就与UILabel的表现一致了
    如有必要,重写UITextField的系统方法,不调用super方法,例如覆盖掉UIAlertView的点击事件

    -(void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated{
    //    [super dismissWithClickedButtonIndex:buttonIndex animated:animated];
        return;
    }
    

    法二:
    增加UITextField的分类扩展,然后利用runtime的method swizzling交换系统方法,这样你所有的UITextField就会变得跟UILabel一样了。。。慎用!!!

    最后总结,有这闲工夫不如还是一个一个删掉替换容易些

    Antwort
    0
  • StornierenAntwort