小编Luc*_*nzo的帖子

用另一种颜色替换图像内的特定颜色

我有一个"房间"的形象.

现在,用户将点击任何特定的颜色,假设图像中有蓝色.

并且用户还将选择替换的颜色,如"黑色"颜色.

因此,图像内的所有"蓝色"颜色将被"黑色"替换.

任何人都知道如何在iPhone中实现这一目标?

感谢帮助.

cocoa-touch uiimageview uiimage uicolor ios

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

针对特定 iOS 版本的 Swift 扩展

我需要为我的类创建依赖于 iOS 版本的自定义扩展。

因此,例如:

@available(iOS 10.0, *)
extension Foo {
    func test() {
        print("do something for iOS 10.0 and later")
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我对 9.0(包含)和 10.0(排除)之间的版本执行测试会怎样?

ios swift

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

初始化bool的内联向量

我正在使用此示例初始化bool向量:

#include <iostream>
#include <map>
#include <vector>
using namespace std;

int main() {
 map<int, vector<bool> > myMap;
 vector<bool> one {true, true, false};
 myMap[2] = one;
 cout << myMap[2][0] << endl;
 cout << myMap[2][1] << endl;
 cout << myMap[2][2] << endl;
 return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在这段代码中唯一的变化是使用std::vector而不是vector而我现在有:

std::map<int, std::vector<bool> >  m_links;
std::vector<bool> m_allFalse {false, false, false, false, false};
Run Code Online (Sandbox Code Playgroud)

它告诉我使用;之后m_allFalse.我怎样才能摆脱这个错误?

我使用的是intel编译器14,但没有使用c ++ 11.

c++ vector c++98

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

Xcode:嵌入式二进制文件的相对路径

我需要包含一个框架

General -> Embedded Libraries
Run Code Online (Sandbox Code Playgroud)

使我的应用程序工作.我有两种方法(我知道):拖放或单击"+"按钮并选择框架.在这两种情况下,Xcode都放置了绝对路径.

有一种方法可以设置相对路径吗?

我想从终端进行纳米编辑:

ProjectName.xcodeproj/project.pbxproj
Run Code Online (Sandbox Code Playgroud)

shared-libraries xcode7 swift2

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

迅捷继承:超级超级

假设这三个类具有这种简单的层次结构:

class A {
    func foo() {
       print("A")
    }
}

class B: A {
    override func foo() {
       super.foo()
       print("B")
    }
}

class C: B {
    override func foo() {
       // *******
       print("C")
    }
}
Run Code Online (Sandbox Code Playgroud)

在C类中,在覆盖方法foo中我想调用一个方法foo:是否可能?

在C++中,这可以通过实现C->A::foo(),但是如何在Swift中实现呢?

inheritance swift

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

UIView图层上的阴影

我已经制作了一条路径来掩盖我的观点:

let path = // create magic path (uiview bounds + 2 arcs)
let mask = CAShapeLayer()
mask.path = path.cgPath
view.layer.masksToBounds = false
view.layer.mask = mask
Run Code Online (Sandbox Code Playgroud)

到目前为止一切都好.

现在我想添加一个跟随路径的阴影,它可能吗?

我尝试了几种方式,最后一种是:

mask.shadowPath = path.cgPath
mask.shadowColor = UIColor.red.cgColor
mask.shadowOffset = CGSize(width: 10, height: 2.0)       
mask.shadowOpacity = 0.5
Run Code Online (Sandbox Code Playgroud)

但这会产生局部阴影和原始视图的颜色.

在此输入图像描述

使用调试视图层次结构

在此输入图像描述

有什么建议?

最终结果应与此类似,但阴影"跟随"路径上的弧.

在此输入图像描述

cocoa-touch uiview ios uibezierpath swift

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

mosquitto-client获得拒绝连接

我想使用mosquitto库使用MQTT协议.

首先,我想做一些安装mosquitto-clients的测试

 sudo apt-get install mosquitto-clients
Run Code Online (Sandbox Code Playgroud)

该程序提供了两种"方法":

  • mosquitto_pub
  • mosquitto_sub

按照说明,我正在尝试提交新主题:

mosquitto_sub -d -t newtopic/test
Run Code Online (Sandbox Code Playgroud)

使用默认主机/端口[localhost/1883].

我获得:

Error: Connection refused
Run Code Online (Sandbox Code Playgroud)

过于通用,因为错误..任何人都可以帮助我吗?
可能是防火墙问题?在这种情况下,我该如何检查这是否是问题?

我正在使用linux ubuntu(3.8.0-42-generic#62~minision1-Ubuntu)

NB相同的行为写的用libmosquitto自定义程序.

linux bash shell mqtt mosquitto

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

Swift:从xib以编程方式创建UIViewController

这几天我快要接近了,我有一个问题.

如果我必须以编程方式创建一个新的UIViewController怎么办?

使用空/新视图控制器很容易:

var controller: UIViewController = UIViewController()
controller.view.backgroundColor = UIColor.whiteColor()
self.presentViewController(controller, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

现在,我有一个我想在控制器上加载的xib文件:

var controller: UIViewController = UIViewController(nibName: "FeedDetail", bundle: nil)
controller.view.backgroundColor = UIColor.whiteColor()
self.presentViewController(controller, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

这次崩溃是因为:

'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "FeedDetail" nib but the view outlet was not set.'
Run Code Online (Sandbox Code Playgroud)

我已经阅读过这篇文章了,我无法理解错在哪里!

在此输入图像描述

objective-c uiviewcontroller ios swift

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

UIScrollView按偏移量滚动

我有这种情况:

  • 一个scrollView适合所有屏幕
  • scrollView中有N个“单元格”,每个单元格都包含一个标签
  • 每个单元格的高度为80px
  • 固定的绿色面罩(UIView)

我以编程方式创建内部带有标签的单元格(UIView),并正确设置scrollView的contentSize。

我知道

scrollView.setContentOffset(CGPoint(x: 0, y: 80.0), animated: true)
Run Code Online (Sandbox Code Playgroud)

将滚动视图移动80。

我如何“覆盖”滚动视图行为以始终滚动80?我想要的是某种选择器行为..这可能吗?

在此处输入图片说明

iphone objective-c uiscrollview ios swift

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

在 iPhone 上获取蓝牙 MAC 地址

序言
我工作的Xcode 7.0.1,斯威夫特2

我试图了解如何检索这些信息的小时数(更新、天数)。
我已经看到有一个框架CoreBluetooth可能可以帮助我。(更新,绝对不是!!)

任何的想法?Objective-c/swift/c/c++ .. 无论如何.. 是一样的。

我已经在这个答案中测试了代码,但打印:

>>> WIFI MAC 地址:02:00:00:00:00:00
>>> IPHONE 蓝牙 MAC 地址:02:00:00:00:00:ffffffff
>>> iPad 蓝牙 MAC 地址:02:00:00 :00:00:01

关于这一点,我已经阅读了官方文档

在 iOS 7 及更高版本中,如果您询问 iOS 设备的 MAC 地址,系统会返回值 02:00:00:00:00:00。如果您需要识别设备,请改用 UIDevice 的 identifierForVendor 属性。(需要标识符用于自己的广告目的的应用程序应考虑改用 ASIdentifierManager 的 AdvertisingIdentifier 属性。)

问题是:如果其他设备可以读取我的蓝牙mac地址,为什么我不能?
我认为应该有办法做到这一点,当然。

我也尝试了这个答案(和其他答案)的片段,但我从来没有得到真正的 mac 地址。

我知道要了解 mac 的蓝牙信息,我可以在终端上运行:

system_profiler SPBluetoothDataType | sed -n "/Apple Bluetooth Software Version\:/,/Manufacturer\:/p"
Run Code Online (Sandbox Code Playgroud)

并且只检索 mac 地址我可以“管道”到上一个命令:

egrep -o '([[:xdigit:]]{1,2}-){5}[[:xdigit:]]{1,2}'
Run Code Online (Sandbox Code Playgroud)

我在问.. 我可以在 iPhone 上以编程方式运行这个命令吗?

实际上,我已经尝试过,使用这个伪代码:

script …
Run Code Online (Sandbox Code Playgroud)

c c++ bluetooth objective-c swift

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