Xcode:UIButton的壁纸

时间:2011-03-13 10:53:17

标签: cocoa xcode uiimageview uibutton wallpaper

我想制作壁纸iPhone应用程序。 现在,如果我有100个壁纸,我是否必须创建100个nib文件和100个.m和.h文件以及100个UIButtons用于保存壁纸和100个UIButton用于转到上一个或下一个壁纸? 有没有其他方法可以做到这一点? 谢谢!

3 个答案:

答案 0 :(得分:0)

当然不是。我会使用UITableView。或者甚至更好的自定义视图看起来类似于iPhone上的照片应用程序。

您不想使用UIButton转到上一张或下一张照片。您想在分页模式下使用UIScrollView 但是,您不希望用户首先以这种方式浏览您的图像。

使用所有图像的缩略图创建一个具有UIScrollView(此次非分页)的索引屏幕。当点击一个时,它会放大一个漂亮的动画,你可以使用前面提到的分页UIScrollView轻弹到下一个或上一个图像。

你知道,就像照片应用程序一样。

答案 1 :(得分:0)

是的确定。 在资源文件夹中保存您的一百个壁纸。它们的名字就像这个“wp_1.png”,“wp_2.png”等。 然后用按钮创建一个笔尖(上一个,下一个并保存) 在uiviewcontroller中,你将拥有一个int属性。例如,你称之为n或类似的东西。我建议为你的壁纸添加另一个属性(UIImageView)然后你在视图控制器中实现这些方法。

-(void)awakeFromNib {
self.n = 1;
UIImage* wallpaper = [UIImage imageNamed:@"wp_1.png"];
UIImageView* view = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,480)];
self.wallpaper = view;
view.image=wallpaper;
[self.view addSubview:view];
}

-(IBAction)next:(id)sender {
self.n++; // increases n by 1;
[self.wallpaper removeFromSuperview];
NSString* name = [NSString stringWithFormat:@"wp_%i.png", self.n];
UIImage* wallpaper = [UIImage imageNamed:name];
UIImageView* view = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,480)];
self.wallpaper = view;
view.image=wallpaper;
[self.view addSubview:view];
}
这样的事情。希望有所帮助

答案 2 :(得分:0)

标题(.h文件)中的

添加类似的内容:

int n; UIImageView *壁纸; }

@property(readwrite)int n; @property(readwrite,retain)UIImageView *壁纸;

在实现文件(.m文件)中:

@synthesize n,壁纸;