为什么文本字段值被截断,我怎样才能获得完整的值.截至目前我正在尝试获取如下文本字段值
do {
if let responseObject = try NSJSONSerialization.JSONObjectWithData(response, options: []) as? [String:AnyObject],
arrayStatuses = responseObject["statuses"] as? [[String:AnyObject]] {
let arrTweets:NSMutableArray = NSMutableArray()
for status in arrayStatuses {
let text = status["text"]!
print(status["text"]!)
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出是
RT @WarfareWW:#Russia /#India可能会在今年年底从Su-30MKI对海/ grnd trgts发射BrahMos巡航导弹https:// ...
在行尾有三个点.我需要打印完整的文本而不截断.
Twitter样本搜索结果JSON数据
{
"created_at": "Mon Aug 01 08:07:43 +0000 2016",
"id": 760024194079916032,
"id_str": "760024194079916032",
"text": "RT @khalidasopore: #KEXIT #KASHEXIT #KashmirKillings #Inida #Pakistan Just trend it my dear Indians to save #Kashmir from Pak Goons https:/…",
"truncated": false …Run Code Online (Sandbox Code Playgroud) 我正在使用IQKeyboardManager pod,用于我的swift 4.0项目.
IQKeyboardManager.sharedManager().enable = true
Run Code Online (Sandbox Code Playgroud)
pod更新后,上面的代码无法正常工作.
如何转换NSString至NSUUID?我得到了转换NSUUID到NSString的答案,但反之亦然找不到.就像这是我的字符串@"12033030303"分配NSUUID使用此字符串任何帮助将不胜感激
将字节值转换为 GB/MB/KB,我使用的是 ByteCountFormatter。下面的示例代码。
func converByteToGB(_ bytes:Int64) -> String {
let formatter:ByteCountFormatter = ByteCountFormatter()
formatter.countStyle = .binary
return formatter.string(fromByteCount: Int64(bytes))
}
Run Code Online (Sandbox Code Playgroud)
现在,我的要求是它应该只显示小数点后一位。1.24 GB => 1.2 GB 的示例,而不是 1.24 GB。应用地板或天花板功能后,强制为个位数。
我的要求是通过过滤掉它的子域名来获取 URL 的域名。
我可以使用以下代码获取主机名
if let url = URL(string: "https://blog.abc.in/") {
if let hostName = url.host {
print("host name = \(hostName)") // output is: blog.mobilock.in
}
}
Run Code Online (Sandbox Code Playgroud)
所以在 URL博客中是一个子域,而abc是一个域名,我希望通过排除其子域部分来只知道/打印abc。
在android中,有一个返回域名的类InternetDomainName,我正在寻找iOS的类似解决方案
我尝试了几个答案,但它不是重复的任何一个或其中一些不起作用,或者这是一种解决方法。
我加入火力地堡分析使用coocapods,我Podfile被
platform :ios, '8.0'
use_frameworks!
workspace 'ProjectWorkspace.xcworkspace'
abstract_target 'Shows' do
pod 'SwiftProtobuf', git: 'https://github.com/apple/swift-protobuf.git', :tag => '0.9.24'
pod 'Firebase/Core'
pod 'Firebase/Messaging'
target 'HostApp' do
project 'HostAppFolder/HostApp.xcodeproj'
end
target 'HostAppReleaseTarget' do
project 'HostAppFolderApp/HostApp.xcodeproj'
end
target 'FrameWorkProject' do
project 'FrameworkProjectFolder/FrameWorkProject.xcodeproj'
end
end
Run Code Online (Sandbox Code Playgroud)
如果我添加SwiftProtobuf只依赖它的正常工作的主机应用程序以及为框架的项目。
如果我想补充火力地堡的依赖,我得到一个运行时错误和应用程序错误味精崩溃
Foo类在HostApplicationPath和FrameworkProjectPath中都实现。将使用两者之一。哪一个未定义。
对于Firebase的每个类文件。
当我从框架项目,它的做工精细删除其他连接标志$(继承),但我不能火力使用到我的框架项目。
我的框架和主机应用程序是用Swfit 3.0编写的,xcode版本是8.x
我的项目结构是我手动创建一个工作区,并把它命名为“EVAWorkspace.xcworkspace”,并增加我的主机应用程序和框架项目到这个工作区,然后我加入的CocoaPods到工作区。
Eva是框架项目,而EvaApp是宿主应用程序项目。
我在swift-5中编写了一个类方法,其参数为Result类型,现在我想在objective-c中使用这个方法,可以吗?如果是,怎么办?
@objc public class DemoClass :NSObject {
@objc public func demoMethod(completion: @escaping (Result<UIImage,Error>) ->
Void) {
//some codes
}
}
Run Code Online (Sandbox Code Playgroud)
一旦我将@objc添加到方法中,它就会抛出错误:方法无法标记为@objc,因为参数的类型无法在Objective-C中表示
我正在开发框架,我已将此框架项目添加到宿主项目中。现在我想将 cocoapods pod(框架)添加到父(主机)项目中。并将相同的 pod 共享到子(框架)项目中。或者我可以添加一些东西到 Podfile 中,它将与子项目共享。
SwiftProtoBuf框架,我想使用。我不想制作伞形框架。
我们可以在父项目和子项目之间共享 cocoapods pod
platform :ios, '8.0'
use_frameworks!
workspace 'ParentApp.xcworkspace'
abstract_target 'commonpods' do
pod 'SwiftProtobuf', git: 'https://github.com/apple/swift-protobuf.git', :tag => '0.9.24'
target 'ParentApp' do
project 'ParentApp.xcodeproj'
end
target 'ChildApp' do
project 'ChildFramework/ChildApp.xcodeproj'
end
end
Run Code Online (Sandbox Code Playgroud)
或者我是否需要将 pod 添加到两个项目中,例如
platform :ios, '8.0'
use_frameworks!
target 'ParentApp' do
project 'ParentApp.xcodeproj'
pod 'SwiftProtobuf', git: 'https://github.com/apple/swift-protobuf.git', :tag => '0.9.24'
end
target 'ChildApp' do
project 'ChildFramework/ChildApp.xcodeproj'
pod 'SwiftProtobuf', git: 'https://github.com/apple/swift-protobuf.git', :tag => '0.9.24'
end
Run Code Online (Sandbox Code Playgroud) 在我的模型类(Beacon.h)中,我有这个属性
@property (strong, nonatomic, readonly) NSUUID *uuid;
Run Code Online (Sandbox Code Playgroud)
我有一个包含该 Beacon 类对象的数组,我想使用 NSPredicate 对其进行过滤。如果 uuid 类型是字符串,它会起作用:
@property (strong, nonatomic, readonly) NSString *uuid;
// ..
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"uuid ==[c] %@ ",strUUID];
NSArray *filterArray = [self.arrBeacons filteredArrayUsingPredicate:predicate];
Run Code Online (Sandbox Code Playgroud)
当 uuid 属性是 NSUUID(不是 NSString)时,如何编写 NSPredicate。
我想得到两个 NSSet 的交集,默认情况下 NSSset 比较对象的每个成员,以得出 SetA 和 SetB 中的交集对象。
这是我的代码。
NSMutableDictionary *dic = [[NSMutableDictionary alloc]init];
[dic setObject:@"25" forKey:@"age"];
[dic setObject:@"abc" forKey:@"Name"];
NSMutableDictionary *dic1 = [[NSMutableDictionary alloc]init];
[dic1 setObject:@"21" forKey:@"age"];
[dic1 setObject:@"xyz" forKey:@"Name"];
NSMutableDictionary *dic2 = [[NSMutableDictionary alloc]init];
[dic2 setObject:@"20" forKey:@"age"];
[dic2 setObject:@"abc" forKey:@"Name"];
NSMutableDictionary *dic3 = [[NSMutableDictionary alloc]init];
[dic3 setObject:@"25" forKey:@"age"];
[dic3 setObject:@"abcNameNotMatch" forKey:@"Name"];
NSMutableDictionary *dic4 = [[NSMutableDictionary alloc]init];
[dic3 setObject:@"20" forKey:@"age"];
[dic3 setObject:@"abcNameNotMatch" forKey:@"Name"];
NSArray *a = [NSArray arrayWithObjects:dic,dic1,dic2, nil];
NSArray *b = [NSArray arrayWithObjects:dic3,dic4, nil];
NSMutableSet *setA = …Run Code Online (Sandbox Code Playgroud) 我需要用于静默通知的通知有效负载示例,我在下面的结构中尝试了此方法,但是它不起作用
{
"notification" : {
"body" : " Survey list updated",
"content-available:" : true,
"data" : {
"isNewUpdateAvailable" : "easysurvey.survey_list_updated"
}
},
"to" : "f6PwToRUxk0:APA91bG7bSWoKsjHXVmXaiDEnFXA2x2jEOMSO6eGCqPv1fRd-dctNLDEabRq-0So_obuPGFqOFTSLJl5FFyuOuXKBXh-n89BmzzXenRTxoirY9Y1c6-J9MxpDp0ojHL2xm1law0V6gg3"
}
Run Code Online (Sandbox Code Playgroud)
使用此结构,我可以接收通知,但它不是静音的,不会唤醒应用程序。我需要Firebase通知的解决方案,并且在iOS 10上,我遵循的是相同的Firebase示例代码
apple-push-notifications ios firebase firebase-cloud-messaging ios10