小编tul*_*dev的帖子

无法将"NSTaggedPointerString"类型的值转换为"NSNumber"

我有一个像这样的Swift结构.

struct Usage {
    var totalData: Double
    var remainingTotalData: Double

    init(jsonData: NSData) {
        var jsonDict = [String: AnyObject]()

        do {
            jsonDict = try NSJSONSerialization.JSONObjectWithData(jsonData, options: []) as! [String: AnyObject]
        } catch {
            print("Error occurred parsing data: \(error)")
        }

        totalData = jsonDict["totalfup"] as! Double
        remainingTotalData = jsonDict["totalrem"] as! Double
    }
}
Run Code Online (Sandbox Code Playgroud)

从API,我得到以下JSON响应.这是jsonDict变量的println .

[
    "totalfup": 96.340899, 
    "totalrem": 3548710948
]
Run Code Online (Sandbox Code Playgroud)

当我尝试将totalfup属性的值分配给属性时totalData,我收到此错误.

无法将"NSTaggedPointerString"类型的值转换为"NSNumber"

谁知道为什么?我尝试将属性类型更改为float然后将整个结构更改为类但仍然会出现问题.

double ios nsjsonserialization swift

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

react-navigation:检测屏幕,tabbar是否激活/出现/聚焦/模糊

当我想在屏幕打开时做一些动作时,我把它们放在componentDidMount中.例如,我可以获取一些数据.

像这样.

componentDidMount() {
  this.updateData();
}
Run Code Online (Sandbox Code Playgroud)

但是反应导航componentDidMount只在用户第一次打开屏幕时出现一次,如果以后用户再次打开此页面则不会触发componentDidMount.

检测页面(屏幕)何时被激活并执行操作的正确方法是什么?

onfocus viewdidappear viewwillappear react-native react-navigation

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

出现MKMapView上的PointAnnotation标注,然后立即消失

我正在UITapGestureRecognizer委托中创建一个带有标注的简单点注释.

我第一次点击地图时,引脚会出现带有标注,但标注会立即消失.

第二次点击相同的引脚时,标注出现并停留在那里,不知道为什么它会在第一次消失.

@IBAction func handleMapTouch(recognizer: UITapGestureRecognizer){
    let view = recognizer.view
    let touchPoint=recognizer.locationInView(view)
    var touchCord=CLLocationCoordinate2D()

    touchCord = mapView.convertPoint(touchPoint, toCoordinateFromView:
     mapView)

        mapView.removeAnnotations(mapView.annotations)
        pointAnnotation.coordinate=touchCord
        pointAnnotation.title="ABC"
        pointAnnotation.subtitle="DEF"

        mapView.addAnnotation(pointAnnotation)
        mapView.selectAnnotation(pointAnnotation, animated: true)


}
Run Code Online (Sandbox Code Playgroud)

annotations mkmapview ios callout swift

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

Objective C:loadNibNamed方法:它是如何工作的?

我想知道怎样loadNibNamedNSBundle类作品; 在某些文件中我发现了类似的东西

[[NSBundle mainBundle] loadNibNamed:@"mynib" owner:self options:NULL];
Run Code Online (Sandbox Code Playgroud)

没有回报价值; 只是在方法内部调用(例如,cellForRowAtIndexPath如果我想自定义我的单元格).在其他文件中我发现:

NSArray* vett=[[NSBundle mainBundle] loadNibNamed:@"mynib" owner:self options:NULL];
Run Code Online (Sandbox Code Playgroud)

在这种情况下,例如cellForRowAtIndexPath,我可以

 return [vett lastObject];
Run Code Online (Sandbox Code Playgroud)

或类似的东西.后一种方法在我看来很清楚; 我在一个向量中加载笔尖然后我使用向量元素.问题是要了解第一个究竟是做什么的:

[[NSBundle mainBundle] loadNibNamed:@"mynib" owner:self options:NULL];
Run Code Online (Sandbox Code Playgroud)

没有返回值,没有单元格引用...我的笔尖的对象在哪里?他们是如何处理的?我不明白它是如何工作的

objective-c nsbundle tableviewcell ios loadnibnamed

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

导入开发人员配置文件.developerprofile不起作用.仍需要密码

我将Developer Profile .developerprofile导入Xcode.但是当我想导出ipa上传到App Store时,它仍然需要该帐户的密码.

它适用于我导入Xcode的所有帐户.

我试图让我的客户端导出新的.developerprofile文件,但它仍然无法修复.

有一天,一切都运作正常.我搜索了几个小时但仍然卡住了.

如下图所示,带有标记(〜)的帐户将停止工作.输入密码后,中间帐户可以正常工作.

请帮我.

macos xcode ios ipa provisioning-profile

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

react-native-firebase - 从 Headless JS 服务打开应用程序/在后台模式下从收到的通知打开应用程序

我读

但这些不是react-native-firebase的解决方案。

我正在react-native-firebase用来处理通知。在前台,一切正常。我坚持使用后台状态。

我正在做一个聊天项目并制作一对一通话功能。当客户有电话时,我会向他们推送数据通知。在 iOS 中,我在客户端收到通知时使用了 CallKit,它运行良好。但是在 Android 中我有一个问题:我可以显示 ConnectionService UI 进行调用,但无法连接到我的 Web 套接字服务器,因为它在 Headless JS 服务上运行。所以我尝试自动打开应用程序。我想将呼叫屏幕显示为 Skype,并接受/拒绝呼叫。(Skype 可以在我有电话时启动该应用程序)

总结,成功步骤:

  • 在前台状态接收呼叫通知并显示呼叫屏幕。
  • 在后台/关闭状态下接收呼叫通知并在 iOS 上显示呼叫屏幕。
  • 在 Android 上在后台/关闭状态下接收呼叫通知。

卡在这里:

  • 在后台显示呼叫屏幕/在 Android 上关闭???

TL;DR - 如何从 Headless JS 服务启动/运行/打开 Android 应用程序?

我深入研究 react-native-firebase,它捕获通知onMessageReceived并将通知消息发送到 Headless JS 服务。

// If the app is in the background we send it to the Headless JS Service Intent headlessIntent = new Intent( this.getApplicationContext(), RNFirebaseBackgroundMessagingService.class …

react-native react-native-android react-native-firebase

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

在UIScrollView中滚动时动画停止

因此,我试图制作一个游戏,用户必须尽可能快地向下滚动,以逃避一个无限大的"块".这是我的问题:我使用UI ScrollView作为我的机制,使用普通UI视图作为子视图进行滚动.我有一个时间设置为每隔0.005秒触发一次,增加"块"的高度和滚动视图的内容高度(这样用户可以在技术上无限滚动).问题是,无论何时用户开始滚动,这都会停止发射(即阻止停止变高).但是,当用户停止滚动时,会立即再次按原样运行.这是我的所有代码:

- (void)viewDidLoad {
[super viewDidLoad];
self.mainScrollView.delegate = self;
self.mainScrollView.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height * 2);


self.mainScrollView.backgroundColor = [UIColor greenColor];
self.mainScrollView.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height * 10);
self.mainScrollView.scrollEnabled = YES;

self.darknessBlock.frame = CGRectMake(self.view.frame.origin.x,   self.view.frame.origin.y, self.view.frame.size.width, 100);
self.darknessBlock.backgroundColor = [UIColor blueColor];

[NSTimer scheduledTimerWithTimeInterval:0.005 target:self selector:@selector(increaseDarknessHeight) userInfo:nil repeats:YES];

}


-(void)increaseDarknessHeight{
int newHeight = self.darknessBlock.frame.size.height + 1;
self.darknessBlock.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.darknessBlock.frame.size.width, newHeight);
}
Run Code Online (Sandbox Code Playgroud)

任何帮助,为什么块停止增长将是伟大的!对不起特定/简单的问题,我对这个网站有点新,我只是在网上寻找一些帮助来解决这个问题.

animation uiscrollview nstimer ios

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

如何知道对象是否是子类或超类的实例

我有2个班:

class Parent
{
  func a() {
     self.b()
  }
  func b() {
     // I want to check here
     if self is Parent  // warning "'is' test is always true"
     {
        log("instance of parent")
     }
  }
}
class Child:Parent
{
}
Run Code Online (Sandbox Code Playgroud)

我想这样检查一下

//
var child = Child()
child.a()  // don't see log
var parent = Parent()
parent.a()  // see log
Run Code Online (Sandbox Code Playgroud)

我知道我可以description在超类中创建一个方法,并在子类中覆盖它.我想知道Swift是否可以在没有工具的情况下检查它description

谢谢你的帮助

ios swift

4
推荐指数
2
解决办法
4754
查看次数

错误,桥接头test.h不存在

所以我疯了,因为我继续得到标题中描述的错误,我没有做任何工作.

我会告诉你我尝试过的东西:

在此输入图像描述

在此输入图像描述

在此输入图像描述

我还可以做些什么?

请帮忙.

xcode objective-c-swift-bridge xcode7

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