0

如何更改 UIPageControl 分页点的颜色?

在这个链接中给出了示例代码。但它对我来说显示了 3 个错误......

第一个错误:

行:CGRect currentBounds = self.bounds;

错误:在不是结构或联合的东西中请求成员“界限”

方法:-(void)drawRect:

第二个错误:在 touchesBegan 方法中与同一行相同的错误。

第三个错误:@protocol PageControlDelegate

@可选的

  • (void)pageControlPageDidChange:(PageControl *)pageControl;

@结尾

错误:'PageControl'之前的预期')'。这是我发生的三个错误......请帮我解决这个问题..

我想更改页面控件指示器(点)颜色...

谢谢和问候, Renuga

4

2 回答 2

2

第一个错误可能是由于self没有引用视图(可能是视图控制器)

第二个错误是因为在解析器到达您的协议定义时尚未定义 PageControl。

带委托的典型类

@protocol MyProtocol;

@interface myClassWithDelegate
{
  id<MyProtocol> _delagate;
}

@end

@protocol MyProtocol
  -(void)MyClass:(MyClassWithDelegate*)c says(NSString*)message;
@end
于 2011-01-06T13:50:50.880 回答
0

我是编写您正在使用的示例代码的人。

我看到 VdesmedT 已经帮助您解决了您遇到的语法问题。所以+1!

至于自定义点:提供的类不支持点的自定义图像。它只是使用核心图形绘制圆圈。圆圈的颜色是使用属性dotColorCurrentPage和配置的dotColorOtherPage

当前页面的默认颜色是灰点和黑点(因为这是我在编写它时需要的)。

假设您希望当前页面使用红点而不是黑点,其他页面使用绿点。创建PageControl实例时,您只需分配如下属性:

pageControl.dotColorCurrentPage = [UIColor redColor];
pageControl.dotColorOtherPage = [UIColor greenColor];

...假设您的实例变量被调用pageControl。或使用任何其他便利/初始化方法来创建UIColor您喜欢的。

希望这可以帮助。

于 2011-02-15T16:23:59.903 回答