小编And*_*nov的帖子

addTarget不适用于iOS中的UIButtons,视图被遮盖

我有两个UIButtons我正在以编程方式创建并设置目标.如果我将这些按钮添加到主视图中,一切都可以很好地工作.但是,当我首先添加到子视图并将此子视图添加到主视图时,触摸事件不起作用.我猜这些按钮被掩盖了.

如何在将这些按钮保留在子视图中的同时将其打开?

这是我的代码:

// Create button panel here
UIImage *buttonPanel = [UIImage imageNamed:@"left_button_background"];
UIImageView *buttonPanelView = [[UIImageView alloc] initWithImage:buttonPanel];
[buttonPanelView setFrame:CGRectMake(20, 186, 363, 345)];

// Populate the panel with buttons
UIButton *cmsButton = [[UIButton alloc] initWithFrame:CGRectMake(10, 10, 351, 142)];
[cmsButton setImage:[UIImage imageNamed:@"BTN_MATLIB"] forState:UIControlStateNormal];
[cmsButton addTarget:self action:@selector(loadCMS) forControlEvents:UIControlEventTouchDown];
[buttonPanelView addSubview:cmsButton];
[self setCms:cmsButton];

UIButton *calcButton = [[UIButton alloc] initWithFrame:CGRectMake(10, 196, 351, 142)];
[calcButton setImage:[UIImage imageNamed:@"BTN_MORE_RESOURCES"] forState:UIControlStateNormal];
[calcButton addTarget:self action:@selector(loadCalc) forControlEvents:UIControlEventTouchDown];
[buttonPanelView addSubview:calcButton];
[self setCalc:calc];

[[self view] addSubview:buttonPanelView];
Run Code Online (Sandbox Code Playgroud)

cocoa-touch touch uibutton uiview ios

2
推荐指数
1
解决办法
5029
查看次数

将现有的 UINavigationController 嵌入到新的视图控制器中

假设我有一个带有导航控制器和几个视图控制器的故事板。

一切都很好,直到我尝试添加一个新的视图控制器并希望将它与现有的UINavigationController. 当我转到 Editor>Embed>Navigation Controller 时,Xcode 会帮助创建一个新控制器,这正是我不想要的。当我尝试拖动以创建线框时,我创建了一个 segue 关系,这也是我不想要的。

有没有办法让新的视图控制器与现有的导航控制器一起玩?

storyboard uinavigationcontroller ios ios5 uistoryboard

2
推荐指数
1
解决办法
3768
查看次数

Excel VBA循环遍历单元格并替换它们的值

我正在尝试构建一个循环遍历一列单元格的宏,并用该国家/地区的名称替换该单元格中的双字母国家/地区代码.但是,当我尝试运行宏时,我得到一个找不到对象的错误.

Sub ChangeCountryText()
'
' ChangeCountryText Macro
' Changes country codes
'
    For counter = 2 To 20
        Set curCell = ActiveSheet.Cells(counter, 1)
        Select Case curCell.Text
            Case "JP"
                curCell.Text = "Japan"
            Case "FR"
                curCell.Text = "France"
            Case "IT"
                curCell.Text = "Italy"
            Case "US"
                curCell.Text = "United States"
            Case "NL"
                curCell.Text = "Netherlands"
            Case "CH"
                curCell.Text = "Switzerland"
            Case "CA"
                curCell.Text = "Canada"
            Case "CN"
                curCell.Text = "China"
            Case "IN"
                curCell.Text = "India"
            Case "SG"
                curCell.Text = "Singapore"
        End Select
    Next …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-2010

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

使用NSArray进行C型int比较

我想迭代一个整数的NSArray并将每一个与特定的int进行比较.所有整数都是C类型的整数.

我使用的代码如下:

-(int)ladderCalc: (NSArray*)amounts: (int)amount 
{
    int result;

    for (NSUInteger i=0; i< [amounts count]; i++) 
    {
        if (amount < [amounts objectAtIndex:i]);
        {
            // do something
        }
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,在将int amount与结果进行比较时出现错误,[amounts objectAtIndex:i]因为您无法将id与int进行比较.为什么这个案件涉及id?不应该objectAtIndex只是在指定的索引处返回对象吗?是否可以将返回的对象强制转换为C int然后进行比较?

或者我应该免除NSArray并在C中做这种类型的事情?

c objective-c nsarray ios

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

在可可中定义enum ivar

假设我有一个叫做的课TrafficLight,我想有一个属性currentColor.我知道可以创建一个枚举来表示固定选择池中的当前颜色,如下所示:

enum currentColor { CurrentlyRed = 0, CurrentlyYellow = 1, CurrentlyGreen = 2 };

但现在我如何将它变成Cocoa类中的ivar?如果我将它作为属性,通常使用的属性属性是什么?枚举定义是否属于实现范围?它是否属于任何特定方法?(比如init?)

cocoa enums cocoa-touch objective-c

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

Rails - 在方法中引用当前模型实例的正确方法?

假设我有一个Post模型,我想在保存时运行一个方法

post.rb我这样做:

:before_save some_method_on_post

def some_method_on_post
  # Do something here
end
Run Code Online (Sandbox Code Playgroud)

我的问题是,如何在方法中引用当前实例化的Post对象?

编辑:所以澄清假设我想这样做:

def some_method_on_post
  post.some_property = foo
end
Run Code Online (Sandbox Code Playgroud)

我是指post自己吗?

ruby methods model ruby-on-rails instance

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

NSPredicate具有布尔属性

假设我有一个Foo带布尔属性的对象isLegit,如何编写NSPredicate以过滤掉该属性设置的对象NO

core-data objective-c nspredicate ios

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

使用CAGradientLayer时的内存错误

我正在使用CAGradientLayer创建一个背景图层,如本问题的答案中所述:UIView和UILabels上的渐变在iPhone上

但是,当我使用此代码时,我得到一个exc_bad_access错误,引用了CGColorSpaceGetModel.

UILabel *headerText = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width -10, 18)];    

CAGradientLayer *gradient = [CAGradientLayer layer];

gradient.bounds = headerText.bounds;

UIColor *topColor = [[UIColor alloc] initWithRed:0.5647 green:0.6235 blue:0.6667 alpha:1.0];

UIColor *bottomColor = [[UIColor alloc] initWithRed:0.7216 green:0.7569 blue:0.7843 alpha:1.0];

NSArray *gradientColors = [[NSArray alloc] initWithObjects:topColor, bottomColor, nil];

gradient.colors = gradientColors;

[headerText.layer insertSublayer:gradient atIndex:0];
Run Code Online (Sandbox Code Playgroud)

知道什么可能导致这个错误?

memory-management objective-c quartz-graphics ios

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

在Objective - C中乘以预处理器常量

假设我有以下预处理器定义

#define MYNUMBER 10f;

我想在我的代码中使用它如下:

float someResult = MYNUMBER * 3;
Run Code Online (Sandbox Code Playgroud)

当我这样做时,Xcode认为我试图*用作一元指针标记而不是乘法符号,并导致错误.定义这样一个常量并在乘法表达式中使用它的正确方法是什么?

objective-c llvm llvm-clang ios xcode4.3

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

从NSConcreteValue/NSValue中获取一个int

我试图在NSValue/ NSConcreteValueinstance中提取一个int .我试着以这种方式施放它们,但它不起作用:

    NSValue *toValue = (NSValue *)someValue;
    NSNumber *toNumber = (NSNumber*)toValue;
    int final = [toNumber intValue];
Run Code Online (Sandbox Code Playgroud)

我也试过用,getValue但这对我也没用.

core-foundation ios ios5 nsvalue

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

无法设置UIKeyboard附件视图

我有一个UIToolbar包含UITextField内部的实例.我想将工具栏设置为UITextField它包含的附件视图.

我这样做的方式如下:

[myTextView setInputAccessoryView:myToolbar];
Run Code Online (Sandbox Code Playgroud)

当我编译并运行代码时,当我按下文本字段时,整个键盘都会消失.我特别确定我设定的inputAccessoryView而不是inputView.似乎整个输入视图都被替换了,没有任何明确的指示.

有谁知道解决这个问题的方法?

uitextfield uikit uikeyboard ios ios5

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

在不改变历史的情况下将我的提交重新授予master

我有一个功能分支和一个主分支.我的功能分支已从主分支中检出,但在当前主分支上的某些提交之前.

我想在主分支上重新提交我的提交,但我不希望主人的历史发生变化,我希望rebase一举应用所有提交并保持repo历史的完整性远程分支.

这可能与git rebase有关吗?

在主人身上这样做

git rebase feature-branch-name

重播我的功能分支上的主人历史,这不是我的意图.

git rebase git-rebase

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