小编Rob*_*son的帖子

UITextField焦点

如何以编程方式将焦点分配给视图中的特定UITextField?我有几个字段,在视图显示上,我想将光标放在特定字段上,而不是顶部的第一个字段.

iphone textinput

62
推荐指数
2
解决办法
4万
查看次数

typedef枚举类型是NSDictionary的关键?

枚举不允许作为NSMutableDictionary的键吗?

当我尝试通过以下方式添加到字典:

[self.allControllers setObject:aController forKey:myKeyType];
Run Code Online (Sandbox Code Playgroud)

我收到错误:

错误:'setObject:forKey:'的参数2的不兼容类型

通常情况下,我使用NSString作为我的密钥名称,不需要强制转换为'id',但为了使错误消失,我已经这样做了.演员阵容在这里是正确的行为还是枚举作为关键是一个坏主意?

我的枚举定义为:

typedef enum tagMyKeyType
{
  firstItemType = 1,
  secondItemType = 2
} MyKeyType;
Run Code Online (Sandbox Code Playgroud)

并且字典被定义并正确分配如下:

NSMutableDictionary *allControllers;

allControllers = [[NSMutableDictionary alloc] init];
Run Code Online (Sandbox Code Playgroud)

objective-c

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

使用grails标记有条件地向html元素添加类

使用标签,您可以在gsp中执行此操作:

<g:if test="${someBean?.aCondition}">
  <div class="aSection">
  ...
  </div>
</g:if>
Run Code Online (Sandbox Code Playgroud)

我真正想做的是添加第二个'类',它包含'display:none'或'display:block'属性,基于'$ {someBean?.aCondition}'的值.

最终的HTML会这样:

<div class="aSection hiddenItem">
...
</div>
Run Code Online (Sandbox Code Playgroud)

(如果$ {someBean?.aCondition}为真,div将为其类设置'shownItem')

相应的css:

.shownItem
{
  display: block;
}
.hiddenItem
{
  display: none;
}
Run Code Online (Sandbox Code Playgroud)

有什么好办法实现这个目标?

grails gsp

10
推荐指数
2
解决办法
6547
查看次数

多次调用viewDidLoad/loadView

在我以编程方式启动的其中一个视图中,我看到了对' loadView/ viewdidLoad'的5个不同调用,但我不明白为什么这么多被调用.有人可以向我解释这背后的机制吗?

我以下列方式在父级UIViewController(TabBar+ NavigationBar应用程序的一部分)实例中启动视图:

MainEditController *editController = [[MainEditController alloc] initWithNibName:@"MainEditView" bundle:nil];           
[self.navigationController pushViewController:editController animated:YES];         
[editController release];   
Run Code Online (Sandbox Code Playgroud)

然后我记录MainEditController's viewDidLoadloadView方法(并调用他们各自的超级方法).

' MainEditView'nib包含3个项目:-File的所有者(类型MainEditController), - 第一个响应者(类型UIResponder)-View(类型UIView)

视图插座连接到文件所有者,视图中没有元素.我打算做的是在主视图中添加几个子视图,并根据特定条件显示其中一个子视图.

我认为两者viewDidLoadloadView会得到被称为控制器内的许多意见(1在这种情况下),但似乎并没有成为一个有效的假设.

iphone

6
推荐指数
2
解决办法
5710
查看次数

NSMutableDictionary的NSInvalidArgumentException/copyWithZone异常

我有一个类,我正在封装ABRecordID,当它被用作添加到NSMutableDictionary的键时,我得到运行时异常:

"NSInvalidArgumentException:*** - [MyRecordId copyWithZone:]:无法识别的选择器发送到实例"

MyRecordId声明为:

@interface MyRecordId : NSObject {
    ABRecordID abRecordId;
}

-(id)initWithId:(ABRecordID)anABRecordId;
@property (nonatomic) ABRecordID abRecordId;

@end
Run Code Online (Sandbox Code Playgroud)

添加到词典:

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
MyRecordId *recordId = [[MyRecordId alloc] initWithId:anABRecordId];
[dict setObject:@"hello" forKey:recordId];
Run Code Online (Sandbox Code Playgroud)

最后一行导致异常..我知道你不能将非对象类型存储为字典的键,但我认为将它包装在NSObject派生类中会使它没问题.

我不应该将ABRecordID存储在其他对象中吗?我应该做别的吗?

iphone

6
推荐指数
3
解决办法
8232
查看次数

打开'DEBUG'宏观值

在我的代码中,我想有条件地执行一些操作:

#ifdef DEBUG
NSLog(@"I'm in debug mode");
#endif
Run Code Online (Sandbox Code Playgroud)

我已配置了Project-> Edit Project Settings-> Build选项卡,以便'DEBUG'被列为用户定义的设置,其值为1.在Configuration下拉列表中选择Debug.这仍然没有打开Debug构建的指令,虽然我认为这是它会做的.

在构建阶段我还需要做什么才能做到这一点?

iphone

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

标签 统计

iphone ×4

grails ×1

gsp ×1

objective-c ×1

textinput ×1