小编Sea*_*ser的帖子

箭头键不在shell中工作

我开始使用Laravel 5项目并尝试使用'php artisan tinker'(psy shell)进行一些实验,但我遇到了一些奇怪的问题.在tinker/psy shell中,按任意箭头键将字符文字打印到屏幕而不是执行预期的行为(左右移动字符,上下循环最近的命令).

正在输出^[[A.向下输出^[[B.正在输出^[[C.左输出^[[D.

这可能是我的终端问题,而不是Laravel错误.我在跑步时遇到了同样的错误行为php -a.

我在OSX上运行终端,使用xterm仿真.

shell terminal laravel-5

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

在子类中重新转换属性

我有一个设置,我有一个视图类型的层次结构,具有等效的模型类型层次结构.设置如下:

节点模型/数据:

@interface GenericNode : NSObject
//blah blah blah
@end
@interface ShapeNode : GenericNode
//more blah
@end
Run Code Online (Sandbox Code Playgroud)

nodeViews,它将始终接收一个等效类型的节点作为其模型:

@interface GenericNodeView : UIView
@property (nonatomic, strong) GenericNode * model;
@end
@interface ShapeNodeView : GenericNodeView
@end
Run Code Online (Sandbox Code Playgroud)

但是,这里的问题是它的类型model总是保留为抽象超类,迫使我每次想要访问子类属性的方法时都要强制转换它.

有没有办法重铸类属性,exampleShapeNodeView.model总是返回一个实例ShapeNode等等?

我尝试过自定义访问器方法,如

@interface GenericNodeView : UIView
@property (nonatomic, strong) GenericNode * model;
-(GenericNode *)myModel;
@end
@interface ShapeNodeView : GenericNodeView
-(ShapeNode *)myModel;
@end

//in genericNodeView implementation
-(GenericNode *)myModel{
  return (GenericNode *) self.model;
}

//in shapeNodeView implementation
-(ShapeNode *)myModel{
  return (ShapeNode …
Run Code Online (Sandbox Code Playgroud)

objective-c subclassing ios

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

标签 统计

ios ×1

laravel-5 ×1

objective-c ×1

shell ×1

subclassing ×1

terminal ×1