小编nuy*_*ait的帖子

Swift - BTLE - 如何添加CBCentralManagerDelegate Protocal

我想制作一个使用蓝牙进行通信的ios应用程序.我正在使用swift.

首先我添加CoreBluetooth.framework,然后添加一个bridge.h并将文件添加到系统桥,导入"CoreBluetooth/CoreBluetooth.h".

然后我创建了一个新类,

import UIKit

class BTCentral: NSObject, CBCentralManagerDelegate   {

}
Run Code Online (Sandbox Code Playgroud)

我打算在那个类中创建一个蓝牙CBCentralManager.但是,上面的代码给了我一个错误.

Type 'BTCentral' does not conform to protocol 'CBCentralManagerDelegate' 
Run Code Online (Sandbox Code Playgroud)

这是一个特定的ScreenShot:点击这里

任何帮助将不胜感激!非常感谢你们的时间.

core-bluetooth swift

7
推荐指数
1
解决办法
6447
查看次数

Alamofire - 重试离线请求的最佳方式

这就是我需要的:

  1. 呼叫后api
  2. 如果成功:什么也不做
  3. 如果失败(没有可用的互联网):将请求放到堆栈上
  4. 监控网络是否已经恢复
  5. 如果网络可用:重试该堆栈上的所有内容

即使用户关闭应用程序,我仍然需要提供堆栈.我需要将堆栈存储到磁盘上

这是我打算做的事情:

  1. 有一个名为apiRequest的类,它包含
    1. 参数
    2. 网址
  2. 有一个名为apiRequestManager的类,它包含
    1. apiRequest数组

apiRequest数组存储在磁盘上.每当用户想要调用api时,我首先调用Alamofire.request,如果失败,则将其放到apiRequest数组中.

使用NetworkReachabilityManager监听用户是否可以访问服务器.如果为true,则在apiRequest中重试所有内容.每次请求成功时,将其从阵列中删除.否则保持原样.

我问这个问题的原因是因为我是Alamofire框架的新手.我不知道这是否是一个好的方法,或者这个案例是否已经在Alamofire处理过.

此外,还有一个RequestRetrier协议.但我不想一次又一次地重试每一个请求,我想同时重试所有请求,如果不成功,我确实希望将请求存储到磁盘上以备将来重试,所以我想这不是什么我想用?

有什么建议?

谢谢.

swift alamofire

6
推荐指数
0
解决办法
873
查看次数

UIButton 垂直底部对齐不起作用

标题UIButton垂直对齐底部不起作用。该按钮位于表格单元格内。我尝试了几种方法。

  1. 在里面xib,选择按钮,在右侧面板上,单击垂直底部对齐。

  2. 在 中xib,选择右侧面板上的按钮,选择标题插图并给出标题插图的数量。

虽然在故事板中,我可以看到按钮底部的对齐方式正确,但是,当在APP中打开时,它仍然垂直居中对齐。

我还尝试以下代码:

// change to .alignBaseline still not working. same effect.
questTitleButton.titleLabel?.baselineAdjustment = .none 
questTitleButton.titleLabel?.numberOfLines = 1
questTitleButton.contentVerticalAlignment = .bottom
questTitleButton.contentHorizontalAlignment = .left
Run Code Online (Sandbox Code Playgroud)

以上所有方法都不起作用。运行应用程序后,按钮仍然垂直居中。


我的解决方案

我可以使它工作的唯一方法是在内容插入区域中设置顶部插入。

在此输入图像描述

现在我的问题是为什么?我读了很多帖子,但没有人遇到和我一样的问题。

比如这个,或者这个。他们都有对齐文本的问题,但我尝试了他们的解决方案,只有设置内容插图才有效。

那么为什么我只能通过设置内容插图将文本与按钮底部对齐?我在这里错过了什么吗?我在设置按钮时做错了什么吗?我使用纯自动布局并在文件中创建视图.xib

该按钮确实有高度约束,并且不存在约束冲突或错误。一切似乎都很好。

cocoa-touch uibutton uikit ios

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

标签 统计

swift ×2

alamofire ×1

cocoa-touch ×1

core-bluetooth ×1

ios ×1

uibutton ×1

uikit ×1