我正在尝试配置深灰色分色器.为什么以下什么都不做?
self.tableView.seperatorStyle = UITableViewCellSeperatorStyleSingleLine;
self.tableView.seperatorColor = [UIColor colorWithRed: 127 green:127 blue:127 alpha:1];
Run Code Online (Sandbox Code Playgroud)
返回一个没有分隔符的表.
一旦我使用[UIColor blackColor],我就会得到分离器.这是怎么回事?
尝试在向下钻取导航控制器中自定义我的后退按钮.
在我的一个视图控制器上,我有一个添加按钮,其中代码以编程方式生成一个新的UIViewController:
- (void)add:(id)sender
{
MyAddViewController *addController = [[MyAddViewController alloc] initWithNibName:@"MyAddViewController" bundle:nil];
[self.navigationController pushViewController:addController animated:YES];
[addController release];
}
Run Code Online (Sandbox Code Playgroud)
这是有效的,当我单击添加按钮时,它会向下钻取到新视图中.在我的viewDidLoad方法里面MyAddViewController.m:
self.navigationItem.backBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] autorelease];
Run Code Online (Sandbox Code Playgroud)
但这不起作用.导航控制器中的后退按钮仍然是堆栈上前一个视图控制器的标题.看来这条线什么也没做.我错过了什么?
谢谢
我在Macbook Pro笔记本电脑上运行docker-machine(0.5.0)和docker-compose(1.5.0)来让我的容器运行.
这意味着我正在使用docker-machine来创建我的虚拟机boot2docker驱动的HOST机器,它将运行我的docker守护程序并托管我的所有容器.
我想我缺少一些关于HOSTS和VOLUME概念的东西,因为它们指的是Docker和文档.
这是我的docker-compose.yml文件(web只是构建了php:5.6-apache图像):
web:
restart: "always"
build: ./docker-containers/web
ports:
- "8080:80"
volumes:
- ./src:/var/www/html
links:
- mysql:mysql
mysql:
restart: "always"
image: mysql:5.7
volumes_from:
- data
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=XXX
data:
restart: "no"
image: mysql:5.7
volumes:
- /var/lib/mysql
command: "true"
Run Code Online (Sandbox Code Playgroud)
Docker撰写卷的文件文档在这里:http://docs.docker.com/compose/compose-file/
它表示卷 - 将路径挂载为卷,可选择指定主机上的路径(HOST:CONTAINER),或访问模式(HOST:CONTAINER:ro).
在这种情况下主机是指我的由docker-machine创建的VM,对吗?还是我的本地macbook文件系统?将VM上的路径挂载到容器?
在网上我声明:
volumes:
- ./src:/var/www/html
Run Code Online (Sandbox Code Playgroud)
这是将我的macbook pro上的本地macbook文件系统./src文件夹映射到我的Web容器.如果我的理解是正确的,不应该将我的VM上的./src文件夹映射到Web容器中的/ var/www/html吗?!从理论上讲,我认为我应该首先将我的本地mac文件系统文件夹./src复制到我的VM,然后我做这个卷声明.似乎docker-compose一下子神奇地做了所有这一切?困惑
最后,我们可以看到我正在创建一个仅限数据的容器来保存我的mysql数据.我宣布:
volumes:
- /var/lib/mysql …Run Code Online (Sandbox Code Playgroud) 下面是Jenkins的nginx配置文件.其中大部分完全按照我在文档中读到的那样.
配置文件:
upstream app_server {
server 127.0.0.1:8080 fail_timeout=0;
}
server {
listen 80;
listen [::]:80 default ipv6only=on;
server_name sub.mydomain.net;
location ^~ /jenkins/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server;
break;
}
auth_basic "[....] Please confirm identity...";
auth_basic_user_file /etc/nginx/.htpasswd;
}
Run Code Online (Sandbox Code Playgroud)
}
当导航到http://sub.mydomain.net/jenkins得到提示我为我的基本身份验证服务器说:[...]请确认识别....
这是正确的,但是一旦我输入正确的凭据,我就会再次获得基本身份验证的提醒,但这一次:服务器说:Jenkins.
第二个隐藏的basic_auth来自哪里?!这对我没有任何意义.
击中取消对第一个提示我,然后正确地接收401授权所需的错误.
在第二个基本身份验证中击中CANCEL("服务器说:Jenkins")我得到:
HTTP ERROR 401
Problem accessing /jenkins/. Reason:
Invalid password/token …Run Code Online (Sandbox Code Playgroud) 我有一个自定义的View类,它构建了UIView的子类.
此视图通过ViewController中的nib文件加载:
[[NSBundle main] loadNibNamed:@"MyCustomView" owner:self options:nil];
Run Code Online (Sandbox Code Playgroud)
在MyCustomView.h里面(它正确地连接在IB作为主视图类)我有一些链接的子视图属性:
@interface MyCustomView : UIView <UITextFieldDelegate> {
....
@public
UIView *backgroundLayer; // a subview of the Main View inside the nib
....
}
@property (nonatomic, retain) IBOutlet UIView *backgroundLayer;
Run Code Online (Sandbox Code Playgroud)
此插座在Interface Builder中正确连接.
在MyCustomView.m中,我有以下实现:
#import <quartzcore/QuartzCore.h>
@implementation MyCustomView
@synthesize backgroundLayer;
- (id)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
if (self) {
....
self.backgroundLayer.layer.cornerRadius = 12.0f;
self.backgroundLayer.layer.borderColor = [UIColor lightGrayColor].CGColor;
self.backgroundLayer.layer.maskToBounds = YES;
....
}
Run Code Online (Sandbox Code Playgroud)
NONE这些backgroundLayer.layer设置被应用.当我在模拟器中运行时,自定义视图会出现在它没有任何这些模块的NIB中的显示方式吗?我错过了什么?我在错误的地方打电话了吗?
我有这样的课..
#import "MyObjectAddView.h"
#import "MyAppDelegate.h"
#define myAppDelegate (MyAppDelegate *) [[UIApplication sharedApplication] delegate]
@class MyObjectAddView;
@interface AccountViewController : UIViewController <UIScrollViewDelegate, MyObjectAddViewDelegate, UIImagePickerControllerDelegate> {
MyObjectAddView *myAddView;
.....
}
@property (nonatomic, retain) IBOutlet MyObjectAddView *myAddView;
- (id) initWithSettings:(SettingsObject *)settings;
@end
Run Code Online (Sandbox Code Playgroud)
为什么它突然告诉我,当我清楚地导入并包含定义协议的@class时,它找不到'MyObjectAddViewDelegate'的协议声明?这里是如何设置MyObjectAddView:
#import <UIKit/UIKit.h>
#import "MyAppDelegate.h"
#define myAppDelegate (MyAppDelegate *) [[UIApplication sharedApplication] delegate]
@protocol MyObjectAddViewDelegate;
@interface MyObjectAddView : UIView <UITextFieldDelegate> {
@private
id <MyObjectAddViewDelegate> delegate;
....
@public
.....
}
@property(nonatomic, assign) id <MyObjectAddViewDelegate> delegate;
.....
@end
@protocol MyObjectAddViewDelegate <NSObject>
// …Run Code Online (Sandbox Code Playgroud) 所以我看到了这个问题:如何将UITextView的"委托"插座连接到实现UITextViewDelegate协议的类?
我的问题类似于booboo在第二个响应中描述的内容(不是标记为答案的那个).
我有一个实现UITextViewDelegate的MyViewController.在nib的界面构建器中,在视图中我选择了TextView并将其委托分配给文件所有者(这是MyViewController).
MyViewController已实现
- (void)textViewDidBeginEditing:(UITextView *)textView
{
NSLog(@"TextView EDIT %@",textView);
}
Run Code Online (Sandbox Code Playgroud)
我每次测试我的应用程序时,只要单击TextView就会出现EXC_BAD_ACCESS崩溃.如果我删除IB中的委托链接,那么键盘弹出正常.
我还尝试在MyViewController内的textview中创建一个IBOutlet UITextView,并将TextView链接到文件所有者中的这个IBOutlet.在viewDidLoad然后我分配:
myDescriptionTextField.delegate = self;
Run Code Online (Sandbox Code Playgroud)
但是,一旦单击TextView,这也会导致EXC_BAD_ACCESS出现同样的问题.
在顶部的XCODE崩溃堆栈跟踪(我认为这是什么?)崩溃的地方说:
objc_msgSend ??
-[UIResponder becomeFirstResponder]
-[UITextView becomeFirstResponder]
-[UITextInteractionAssistant setFirstResponderIfNecessary]
Run Code Online (Sandbox Code Playgroud)
......等等?
这有帮助吗?我对这个问题很遗憾?一切看起来都很正确.
我正在创建一个UIToolbar,只有一个UILabel放在它上面.标签内容是动态的,可以改变,我想把它放在UIToolbar上.
有谁知道UIToolbar左右两侧的确切边距大小?
我正在创建[[UIBarButtonItem alloc] initWithCustomView:myLabelContainer],我正在尝试确保myLabelContainer占用整个工具栏空间,减去强制边距.
现在我猜测每边的边距大约是12像素,所以框架宽度为296的UIView应该填满整个UIToolbar?
这些信息是否随处可用?
我在UIViewController中有以下代码 -
[flipButton addTarget:self.navigationController.delegate action:@selector(changeModeAction:) forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)
如您所见,它在其导航控制器委托中调用一个方法.如何正确地将对象传递给此方法?
const data = [
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1001]},
{id: "001", failedReason: [1002]},
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1000, 1003]},
{id: "002", failedReason: [1000]}
];
Run Code Online (Sandbox Code Playgroud)
给定这个数据集,如果我想返回具有唯一id值的对象数组,那么我可以使用 Lodash 简单地调用:
_.uniqBy(data, 'id')
我知道使用此方法仅保留元素/匹配的第一次出现。
上面将返回:
[ { id: '001', failedReason: [ 1000 ] },
{ id: '002', failedReason: [ 1000 ] } ]
Run Code Online (Sandbox Code Playgroud)
我是 Ramda 的新手。Ramda one-liner 与此等效的是什么?
R.uniqBy(???, data)
cocoa-touch ×7
ios4 ×7
iphone ×7
arrays ×1
delegates ×1
docker ×1
ecmascript-6 ×1
javascript ×1
jenkins ×1
mysql ×1
nginx ×1
object ×1
objective-c ×1
protocols ×1
ramda.js ×1
uibutton ×1
uitableview ×1
uitextview ×1
uitoolbar ×1
uiview ×1
volumes ×1