小编skå*_*fan的帖子

使用[UIColor colorWithRed:green:blue:alpha:]不能与UITableView seperatorColor一起使用?

我正在尝试配置深灰色分色器.为什么以下什么都不做?

self.tableView.seperatorStyle = UITableViewCellSeperatorStyleSingleLine;
self.tableView.seperatorColor = [UIColor colorWithRed: 127 green:127 blue:127 alpha:1];
Run Code Online (Sandbox Code Playgroud)

返回一个没有分隔符的表.

一旦我使用[UIColor blackColor],我就会得到分离器.这是怎么回事?

iphone cocoa-touch uitableview ios4

86
推荐指数
2
解决办法
7万
查看次数

navigationItem.backBarButtonItem不工作?为什么上一个菜单仍显示为按钮?

尝试在向下钻取导航控制器中自定义我的后退按钮.

在我的一个视图控制器上,我有一个添加按钮,其中代码以编程方式生成一个新的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)

但这不起作用.导航控制器中的后退按钮仍然是堆栈上前一个视图控制器的标题.看来这条线什么也没做.我错过了什么?

谢谢

iphone cocoa-touch objective-c uinavigationcontroller ios4

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

Mac上的Docker Machine:在docker主机/ docker-machine上看不到挂载的卷?卷物理存储在哪里?

我在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)

mysql volumes docker docker-compose docker-machine

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

Jenkins/Nginx - Double提示基本身份验证,为什么?为什么有内部Jenkins认证?

下面是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)

authentication nginx jenkins nginx-location

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

为什么在initWIthCoder中调用我的UIView图层属性时没有设置:(NSCoder*)aDecoder?

我有一个自定义的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中的显示方式吗?我错过了什么?我在错误的地方打电话了吗?

iphone cocoa-touch interface-builder uiview ios4

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

当'MyObjectViewDelegate'明确存在时,找不到它的协议声明?1

我有这样的课..

#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)

iphone cocoa-touch protocols ios4

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

UITextView委托类在单击textview时崩溃了?!这是怎么回事?

所以我看到了这个问题:如何将UITextView的"委托"插座连接到实现UITextViewDelegate协议的类?

我的问题类似于booboo在第二个响应中描述的内容(不是标记为答案的那个).

我有一个实现UITextViewDelegateMyViewController.在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)

......等等?

这有帮助吗?我对这个问题很遗憾?一切看起来都很正确.

iphone cocoa-touch delegates uitextview ios4

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

UIToolbar - 边距?有谁知道UIToolbar的左右边距?

我正在创建一个UIToolbar,只有一个UILabel放在它上面.标签内容是动态的,可以改变,我想把它放在UIToolbar上.

有谁知道UIToolbar左右两侧的确切边距大小?

我正在创建[[UIBarButtonItem alloc] initWithCustomView:myLabelContainer],我正在尝试确保myLabelContainer占用整个工具栏空间,减去强制边距.

现在我猜测每边的边距大约是12像素,所以框架宽度为296的UIView应该填满整个UIToolbar?

这些信息是否随处可用?

iphone cocoa-touch uitoolbar ios4

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

如何在点击UIButton时将对象作为参数发送?

我在UIViewController中有以下代码 -

[flipButton addTarget:self.navigationController.delegate action:@selector(changeModeAction:) forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)

如您所见,它在其导航控制器委托中调用一个方法.如何正确地将对象传递给此方法?

iphone cocoa-touch uibutton ios4

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

这个 Lodash uniqBy 调用的 Ramda 等价物是什么?

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)

javascript arrays object ecmascript-6 ramda.js

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