How to use custom UIView subclass in XIB editor wi

2019-04-28 02:59发布

I have added a XIB based UIViewController to my solution and dragged some UIViews into it. Now I want some of the views not to be UIView but RoundedRectView (https://github.com/Krumelur/RoundedRectView) which inherits from UIView.

How to achieve this? I tried to change the class in Interface Builder but that did nothing. Then I manually modified the designer.cs file but that resulted in a failure. Then I tried modifying the fake ObjC code but that failed too.

(I'm using Xcode 4.2 and MD 2.8.6.4)

1条回答
Fickle 薄情
2楼-- · 2019-04-28 03:26

Your view subclass needs at least two things:

  1. Register attribute

    [Register("MyView")]

    public class MyView : UIView {}

  2. IntPtr constructor

    public MyView(IntPtr handle) : base(handle) {}

You then open the XIB in Interface Builder, add a UIView and set its Class in the Identity Inspector to the name you passed to the Register attribute. When you connect it to an outlet, you will see that it has the correct type.

Outlet with correct type

查看更多
登录 后发表回答