创建一个用于自定义视图的基类,并让其他(UIViews)从该类继承

时间:2012-04-08 10:33:47

标签: iphone objective-c uiview uiviewcontroller

我读过这篇文章,但我无法让它发挥作用:Change Background Color...

我喜欢为我的所有视图自定义创建一个基础UIView类,例如背景图案,按钮的颜色,标签栏的颜色等。

这是我尝试过的:

  • 创建了新的Single View Application
  • 使用UIViewController方法-viewDidLoad
  • 自定义视图
  • 创建了UIViewController
  • 的新子类
  • 在IB中,我创建了一个新的UIViewController对象
  • 在IB(Identity Insp。)中,我将UIViewController类设置为我之前创建的子类

这不是正确的方法吗? 我在想新创建的UIViewController类将继承所有类 我的第一个UIViewController类的自定义,因为我将其子类化了。

第二个问题是如何为某些对象而不是整个视图使用基类? 例如,如何让我的应用程序中的所有UIButtons继承我在一个类中定义的所有行为?

希望你能提供帮助。

祝大家复活节快乐。

1 个答案:

答案 0 :(得分:0)

我相信您想要自定义您的视图,但确切的方式和时间对我来说并不清楚..因此我将提供一个通用方法,它将为您提供如何操作的一般概念..

首先创建一个UIView的子类BaseView,其中包含要自定义的属性,现在在viewController的viewDidLoad方法中创建一个BaseView的对象,并根据需要自定义此对象。完成此操作后,只需将viewController的self.view属性设置为此新创建的BaseView对象,然后释放BaseView对象。 希望这对你有所帮助......

编辑: 根据评论.. 首先创建一个BaseViewController类,其中UIViewController的子类在此类的viewDidLoad中使用self.view自定义您的视图

现在,您要在tabController中使用的viewControllers应该将此BaseViewController子类化... ...不要忘记在[super viewDidLoad];中调用viewDidLoad这个viewcontroller。

这是我提供的最好的... :)让我知道它是否适合你。