小编hen*_*g77的帖子

在iOS7中创建没有图像的圆形按钮

我想重新创建iOS7中Clock应用程序中的圆形按钮.按钮基本上是具有不同外观的圆形,具体取决于按钮状态(绿色边框,红色边框,灰色填充).

我当然可以使用一个带有不同状态图像的简单UIButton来实现这一点.

但是我正在寻找一种以编程方式绘制圆的解决方案,因此我可以轻松地更改半径,笔划宽度等.

据我所知,UIButton只允许我为每个状态定义一个UIImage,所以我不能直接修改每个状态的层(例如,提供一个带有cornerRadius的层).还有另外一种方法吗?

uibutton ios ios7

14
推荐指数
2
解决办法
3万
查看次数

消费级路由器中的多播支持状态是什么

我正在设计一个系统,它有多个小型嵌入式系统主机在局域网中进行通信.UDP多播非常适合我的目的.

但我担心普通路由器的组播支持.我需要将系统部署到配备Wifi路由器的普通家庭,因此我可以遇到任何类型的路由器.如果多播将比使用更麻烦,我将使用UDP广播.

为了做出决定,我感谢今天普通路由器中有关多播支持的任何数据或经验:

  • 今天销售的所有消费者路由器是否合理支持多播?LAN的限制对我来说不是问题,我不需要通过Internet进行多播.
  • 旧路由器怎么样?
  • 我需要注意普通的多播实现中是否存在任何重大问题(例如丢包,配置问题等)?

networking routing router udp multicast

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

用于多平台多语言项目的Golang代码组织

我正在为一个多平台项目寻找一个好的项目组织,其中包含用Go编写的多个组件.我知道http://golang.org/doc/code.html推荐的布局,但是布局建议似乎不符合我的要求.

项目组成部分是:

  • 服务器(用Go编写)
  • 客户端,跨平台(Go)
  • 库,在服务器和客户端之间共享(Go)
  • 更多客户(iOS,Android)

我的要求是:

  • 单个git存储库中的所有组件
  • 保持组件分离(例如,每个组件一个目录)
  • Go组件可以构建为多个子包

我目前的做法:

project/ (this is the repository root)
  server/
    server.go (package main)
    src/          
      server/
        package1/
          package1.go
        ...
  client/
    client.go (package main)
    src/
      client/
        package2/
          package2.go
        ...
  lib/
    src/
      lib/
         lib.go
         ...
  client-ios/
    ...
  client-android/
    ...
Run Code Online (Sandbox Code Playgroud)

要构建,我使用Makefile

  1. 将lib /复制到server /和client /
  2. 分别构建服务器/和客户端/,每次都将GOPATH设置到相应的目录.

它有效,但感觉非常笨重,与推荐的代码布局完全不同.

这是我正在考虑的替代方案:

project/ (this is the repository root)
  gospace/
    src/
      server/...
      client/...
      lib/...
  client-ios/
    ...
  client-android/
    ...
Run Code Online (Sandbox Code Playgroud)

有了这个布局,我有一个GOPATH(gospace /),不需要klunky Makefile.然而,组件不像第一替代方案那样整齐地分离(即,通过顶级目录).

我的问题:哪种项目布局最适合我的要求和Go约定和工具支持?有没有更好的选择,我还没有看到?

code-organization project-organization organization go

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

UITableView负顶部内容插入在重新排序行时会导致毛刺

我有一个UITableView,负顶部内容插入(-20).我使用负插入阴影效果:表头是阴影渐变.负插入导致阴影仅在用户向下拖动表时出现(类似于Clock应用程序中的Alarms表).

这很好用.直到我开始重新排序行(通过标准的UITableView重新排序机制).

我抓住第一行的瞬间,整个表跳下,使最后一行的下边缘与屏幕底部对齐.这是一个非常奇怪的故障.当我释放行(在相同或其他位置)时,表保持在这种奇怪的,未对齐的状态.当我进行一些滚动时,表格返回其原始位置.

如果我将它们拖到顶行,这也适用于其他行.在顶行下面重新排序工作正常.当我将内容插入更改为零(或正数)时,不会发生毛刺.

它看起来像iOS(5.0)中的一个错误 - 除非我遗漏了什么?知道如何解决这个问题吗?

uitableview ios

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

iOS4中的"Power Logging"设置有什么作用

从iOS4开始,我注意到iPhone上的一个新设置:设置 - >开发人员(仅在iPod,照片,商店下方) - >电源 - >日志记录.

有谁知道这是做什么的?我在文档或网上找不到任何相关内容.

iphone settings logging ios4

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

识别controlTextDidEndEditing的发件人

我有一个视图,其中三个NSTextField连接到一个视图控制器,它作为所有三个的委托.

我已成功实现controlTextDidEndEditing来拦截用户输入的文本并更改模型中的属性.该方法在委托中是唯一的,并且所有三个文本字段都触发它.问题是,我如何确定哪一个发出了通知?我可以从通知的关键"NSFieldEditor"获取NSTextView,但这并不能告诉我它是哪一个.一开始我想到使用NSTextField占位符,但该方法返回一个NSTextView,它似乎没有占位符属性.

任何的想法?

macos cocoa

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

核心数据关系未与RESTkit映射

我正在努力使用RESTkit 0.20.0-pre6获得核心数据关系的正确映射.

我想映射这个JSON:

{ "items" : [ {"id" : 2001, "itemAttr1" : "..."}, ...<more items>... ],
  "rooms":  [ {"id" : 3001, "items": [2001, ...<more item id's>...] }
Run Code Online (Sandbox Code Playgroud)

到相应的核心数据模型:

Entity ItemMO (Attributes "id", "itemAttr1", Relationship "room" to RoomMO)
Entity RoomMO (Attributes "id", Relationship "items" to ItemMO)
Run Code Online (Sandbox Code Playgroud)

属性映射正常,但关系为空.

我尝试使用此处RKConnectionDescription所述的方法,使用此代码:

NSEntityDescription *roomEntity = [NSEntityDescription entityForName:@"RoomMO" inManagedObjectContext:self.context];
NSRelationshipDescription *itemsInRoom = [roomEntity relationshipsByName][@"items"];
RKConnectionDescription *connection = [[RKConnectionDescription alloc] initWithRelationship:devicesInRoom keyPath:@"devices"];
[roomMapping addConnection:connection];
Run Code Online (Sandbox Code Playgroud)

我也尝试使用简单RKRelationshipMapping无济于事:

[itemMapping addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath:nil toKeyPath:@"room" withMapping:roomMapping]];
Run Code Online (Sandbox Code Playgroud)

我必须遗漏一些简单的东西,因为这不应该是RESTkit的一个奇特的案例.有任何想法吗?

core-data ios restkit

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