如何更改默认白色的Pagecontroller指示灯颜色?

时间:2011-01-07 12:24:19

标签: iphone uipagecontrol

http://apptech.next-munich.com/2010/04/customizing-uipagecontrols-looks.html

在上面的url中有一些示例代码用于自定义UIPageControl的Look ...

在我的应用程序中,我想将pagecontrol指示符(点)颜色更改为其他颜色而不是默认的白色...我正在按照上面链接中给出的代码。但是,我有疑问。

NSString * imgActive = [[NSBundlemainBundle] pathForResource:IMG_PAGE_ACTIVE ofType:nil];

NSString * imgInactive = [[NSBundlemainBundle] pathForResource:IMG_PAGE_INACTIVE ofType:nil];

我应该为pathForResource提供什么:-------------。我应该在哪里添加活动和非活动页面的图像以及如何将图像检索到应用程序中。

请给我一些想法......

先谢谢

1 个答案:

答案 0 :(得分:4)

只需将两个图像添加到项目资源中即可。 例如dot_active.pngdot_inactive.png

NSString* imgActive = [[NSBundlemainBundle] pathForResource:@"dot_active" ofType:@"png"];
NSString* imgInactive = [[NSBundlemainBundle] pathForResource:@"dot_inactive" ofType:@"png"];

我使用这两张图片:

活动点

Active image

Inactive image表示非活动点

修改

如果您想修改点的大小,可能

for (NSUIntegersubviewIndex = 0; subviewIndex < [self.subviews count]; subviewIndex++) {
    UIImageView* subview = [self.subviews objectAtIndex:subviewIndex];
    if (subviewIndex == page) {
        [subview setImage:[UIImage imageWithContentsOfFile:imgActive]];
    } else {
        [subview setImage:[UIImage imageWithContentsOfFile:imgInactive]];
    }
    subview.frame = CGRectMake(/* position and dimensions you need */);
}

应该这样做。