标签: uiview

CGRectMake不与UIView合作

今天我花了几天时间只是为了在我的应用程序加载时隐藏PickerView,但问题不在于PickerView.它与CGRectMake有关.

我在Xcode上尝试了一个简单的项目,只是为了向您展示CGRectMake对我不起作用......

这是我的故事板(灰色区域是UIView组件):

在此输入图像描述

这是我的界面:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIView *container;

@end
Run Code Online (Sandbox Code Playgroud)

这是我的实施文件:

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    _container.frame = CGRectMake(0, 0, 320, 204);
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
Run Code Online (Sandbox Code Playgroud)

它是非常基本的代码,没有被其他代码污染......但是,给予CGRectMake的任何数字都不会使灰色区域移动.我已经改变了X,Y值,但灰色的UIView仍然像你在故事板上看到的那样.

为什么CGRectMake没有处理我的案子?哪里有问题?

更新:我在检查员框中看到了autolayout

在此输入图像描述

更新:这是我的连接检查器

在此输入图像描述

iphone objective-c uiview ios

0
推荐指数
1
解决办法
5012
查看次数

将UIViews转换为自定义视图

所以我有一个UIScrollView,其中填充了一系列MyCustomViews,它们是标准UIView的子类.在委托回调"scrollViewDidScroll我试图循环遍历所有子视图并调用它们上的特定函数,但我不认为类型转换是有效的.这是我的代码如下:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{

    for(UIView *subView in [scrollView subviews){

        MyCustomView *customView = (MyCustomView *)subView;
        [customView myMethod];
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在customView上调用"myMethod"时,程序崩溃说一个无法识别的选择器被发送到实例.我相信我的类型转换是myMethod在其他情况下工作的方法.那么我该如何解决这种情况呢?

casting objective-c uiview ios

0
推荐指数
1
解决办法
1271
查看次数

Objective C如何在类方法中引用视图

我的应用程序有多个视图以编程方式添加按钮,而不是在每个控制器中使用以下实例方法,我想将该方法放在一个公共类中,将其用作类方法.

+ (void) addLeftImageButton:(UIButton *)leftButton:(float)x:(float)y:(NSString *)name:(int) tag
{
     leftButton = [UIButton buttonWithType:UIButtonTypeCustom];
     [leftButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
     [leftButton setTag: tag];
     [leftButton setBackgroundImage:[UIImage imageNamed:name] forState:UIControlStateNormal];
     leftButton.frame = CGRectMake(x, y, 345.0, 345.0);
     [self.view addSubview:leftButton];
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何引用self.view调用视图.如self.view没有在普通类公知的.

objective-c uiview ios

0
推荐指数
1
解决办法
522
查看次数

扩展UIView并在iOS中添加属性

我想向UIView添加一个属性.我知道我可以继承一个UIView但是因为我想添加一个属性我想要扩展它.

我试着这样:

@interface UIView (Util)
@property(nonatomic, assign) BOOL isShow;
@end

@implementation UIView (Util)
@dynamic isShow;

-(void)setIsShow:(BOOL)isShow{
    self.isShow = isShow;
}
@end
Run Code Online (Sandbox Code Playgroud)

但它不起作用.它引发了一个例外:Thread 1: EXC_BAD_ACCESS(code=2,address,...)

extend uiview ios

0
推荐指数
1
解决办法
3256
查看次数

具有持续时间和自动反转的iOS动画

我正在UIImageView使用UIView块API制作动画.我的动画UIImageView连续淡出In和Out.如何在特定的持续时间内为此设置动画?

我已经提出了这段代码

float tempDuration = 5.0;
[UIView animateWithDuration:tempDuration
                          delay:0
                        options:UIViewAnimationOptionAutoreverse | UIViewAnimationOptionAllowUserInteraction
                     animations:^{
                         _imageView.alpha = 1;
                     }
                     completion:nil];
Run Code Online (Sandbox Code Playgroud)

animation objective-c uiview uiimageview ios

0
推荐指数
1
解决办法
5493
查看次数

好的有单例UIView子类?

我有一个"加载..."覆盖UIView子类,在我的应用程序的各个地方使用.视图看起来总是一样的,并且一次不应该使用多个视图.这似乎是使用单身人士的好地方.为简单起见,我想只是类的方法showOverlayhideOverlay,让每一个使用它不具有类来管理它的一个实例.它到处都是重复的代码.

我的直觉告诉我这是一个坏主意,但我不确定为什么会这样.它被认为是一种不好的做法吗?这是一个简单的视图,不应占用太多内存.

singleton uiview ios

0
推荐指数
1
解决办法
983
查看次数

UIView transitionFromView更改视图高度

我使用此代码在2之间进行更改UIView:

UIViewAnimationOptions animationType = UIViewAnimationOptionTransitionFlipFromLeft;

[UIView transitionFromView:self.playlistTableView toView:self.playerView duration:0.5 options:animationType completion:^(BOOL finished){
     [self.containerView sendSubviewToBack:self.upperView];
     [self.containerView sendSubviewToBack:self.playerView];

     self.isPlaylistVisible = !self.isPlaylistVisible;
     isControlsHidden = NO;
}];
Run Code Online (Sandbox Code Playgroud)

而且我注意到一种奇怪的行为,当我将翻转的高度调整为self.playerView20px并且在一秒之后,它会增加回到正常的帧大小.

我尝试更改animationTypeUIViewAnimationOptionLayoutSubviews,现在当我在视图之间切换时,不会发生此行为.知道可能是什么问题吗?

objective-c uiview ios

0
推荐指数
1
解决办法
276
查看次数

动画时获取UIView的当前帧

我有一个UIView,我想在它动画的同时得到它的当前帧.我正在使用基本动画:

[UIView beginAnimations:@"MoveView" context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationDuration:3];
_testView.frame = CGRectMake(0, 100, 40, 40);
[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)

我有一个按钮,应该在动画时在第一个当前位置添加另一个UIView,但是当我按下按钮时,它会将它添加到动画的结束位置......有什么建议吗?先感谢您!

objective-c uiview uiviewanimation cgrect

0
推荐指数
1
解决办法
1424
查看次数

将两个标签连接到一个插座

现在我明白这个问题之前已被问过,但答案并不令人满意.我的问题是我有一个带有视图的视图控制器和包含标签的东西.我为它添加了一堆代码,现在我正在扩展它.我现在有一个问题,我决定在我的界面添加另一个UIView,它有一个标签,该标签将像我在第一个UIView中的标签一样完全正常运行.我的问题是我不想进入我的视图控制器方法,每次操作第一个标签时都要添加另一行代码.无论如何,我可以将另一个标签链接到我为我的第一个标签设置的初始IBOutlet吗?或者每次操作第一个标签时,我是否必须进入我的代码并添加额外的代码行?

objective-c uiview ios

0
推荐指数
2
解决办法
5090
查看次数

如何在objective-c中使动画在动画中振动?

我有一个叫做qShake的UIView.当用户出错时,我希望该视图在很短的时间内在一个小空间内从左向右摇动.如何制作动画呢?

animation uiview ios

0
推荐指数
1
解决办法
1182
查看次数