【问题标题】:Xcode : Wallpapers with UIButtonXcode:带有 UIButton 的壁纸
【发布时间】:2011-03-13 10:53:16
【问题描述】:

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

【问题讨论】:

    标签: cocoa xcode uiimageview uibutton wallpaper


    【解决方案1】:

    是的,当然。 将您的一百张壁纸保存在资源文件夹中。它们被命名为“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】:

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

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

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

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

      【讨论】:

        【解决方案3】:

        在标题(.h 文件)中添加类似的内容:

        int n; UIImageView* 壁纸; }

        @property (readwrite) int n; @property(读写,保留)UIImageView* 壁纸;

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

        @synthesize n,壁纸;

        【讨论】:

        • 谢谢,成功了。但是当我调试它时,它会在整个屏幕上显示壁纸,隐藏下一个按钮。有什么办法可以在壁纸上制作隐藏按钮?
        • 当然。最简单的方法是为下一个按钮添加一个新的 IBOutlet 属性,如下所示: IBOutlet UIButton* nextButton;然后你可以从 uiviewcontroller 调用:[self.view bringSubviewToFront:nextButton];
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多