【问题标题】:Incompatible integer to pointer conversion assigning to 'CGFloat *' (aka 'float *') from 'int'从'int'分配给'CGFloat *'(又名'float *')的不兼容整数到指针转换
【发布时间】:2014-03-10 23:49:20
【问题描述】:

CGFloat 有问题。我要做的是为UIScrollView 的X 设置一个值,以便在用户使用UIButton 更改页面时执行一些操作。

这是 Xcode 给我的错误:

Incompatible integer to pointer conversion assigning to 'CGFloat *' (aka 'float *') from 'int'

这是我的代码:

.h

#import <UIKit/UIKit.h>

@interface MenuViewController : UIViewController <UIScrollViewDelegate>
{

}

@property (nonatomic)                       CGFloat         *offsetPoint;
@property (weak, nonatomic)     IBOutlet    UIScrollView    *trackSelectionScrollView;

@end

.m

- (void)scrollForward
{
    self.offsetPoint = self.trackSelectionScrollView.contentOffset.x; // Error here

    if ((self.offsetPoint = 0)) // Error here
    {
        [self.trackSelectionScrollView setContentOffset:CGPointMake(320, 0) animated:YES];
    }

    if ((self.offsetPoint = 320)) // Error here
    {
        [self.trackSelectionScrollView setContentOffset:CGPointMake(640, 0) animated:YES];
    }

    if ((self.offsetPoint = 640)) // Error here
    {
        //Last page do nothing
    }
}

如果您无法理解我发布的代码的问题,我会发布更多内容:-)

【问题讨论】:

  • 基本上,它会警告您您正在尝试将整数分配给指针。你不应该那样做。 (指针的类型有点像红鲱鱼 - any 指针类型会发生错误。)

标签: ios pointers uiscrollview cgfloat


【解决方案1】:

@property (nonatomic) CGFloat *offsetPoint;

此属性正在存储一个指向浮点数的指针,但它不应该如此。将其更改为:

@property (nonatomic) CGFloat offsetPoint;

【讨论】:

  • 哇,太快了!谢谢:-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多