小编Yoa*_*nGJ的帖子

IOS Facebook SDK - 发布开放图表并在时间轴上显示而不单击活动日志

从Facebook SDK示例代码中,当成功将打开的图形对象发布到时间轴时,您必须在Facebook网站上的活动日志中单击时间轴上的显示.

如何忽略这些步骤并明确地将您的OG分享到时间表?

---------------------------------------- 下面的答案: ------ ----------------------------------

只需在FBOpenGraphAction对象中再添加一个代码:

id<FBOpenGraphAction> action = (id<FBOpenGraphAction>) [FBGraphObject graphObject];
[action setObject: @"true" forKey: @"fb:explicitly_shared"];  // This is the key point!
Run Code Online (Sandbox Code Playgroud)

您应该在网站的Facebook Developer App Dashboard中为开放图表操作启用"明确共享"设置.

有关更多详细信息,请查看有关显式共享的文档

facebook facebook-graph-api ios facebook-opengraph facebook-ios-sdk

30
推荐指数
1
解决办法
3887
查看次数

如何在Swift项目中使用Superpowered lib

我想在Swift中制作一个应用程序,只需通过iPhone的麦克风录制,然后播放录制的声音.

为此,我想使用lib Superpowered这是一个带头文件的静态库.

为此,我尝试拖放项目中的.a和头文件(Xcode为我创建了一个桥接头文件),在Xcode> Target> General中添加了"链接框架和库"中的.a(等等) Xcode>目标>构建阶段>"链接二进制文件库"也可以在Xcode>目标>构建设置>搜索路径>库搜索路径中索引.h文件路径.

但是,我有错误"ld:未找到架构arm64的符号"与此处的XCode完全相同:架构arm64错误的未定义符号,我尝试了我在网上找到的所有解决方案,但仍然没有编译方式.

所以!

Superpowered为我们提供了一个示例应用程序来展示如何混合使用Objective-C++并在Swift项目中使用它们的lib(如果你想要https://github.com/superpoweredSDK/Low-Latency-Android-Audio-,这里有一个指向git的链接iOS-Audio-Engine).

以下是示例项目的一些屏幕截图,其中包含我理解的内容以及我不了解的内容:

桥接头文件Superpowered

Bridging-Header-File包含了我想在我的Swift代码中使用的lib方法的原型(我不喜欢这个,但如果它是唯一的方法......).

ViewController文件

viewController文件,其中Swift中的代码是,我可以创建一个Superpowered对象,感谢Bridging-Header-File,并调用我放入它的方法.

.mm文件

和wtf我甚至不明白为什么这个Objective-C++文件在这里以及它包含什么.它无处不在,甚至不是他们的lib文件.

因此,考虑到这个示例项目,我创建了自己的项目,这里有一些截图:

Briging报头 - 文件

同样的Bridging-Header-File在示例项目中除了我包含SuperpoweredIOSAudioIO.h所以我可以使用SuperpoweredIOSAudioIODelegate.

的viewController

我的viewController文件,其中Swift中的代码是,我可以创建一个Superpowered对象感谢Bridging-Header-File,并调用我放入它的方法.

直到这里,它是伟大的,除了我不能为例子创建一个SuperpoweredRecorder对象.如果我尝试将SuperpoweredRecorder.h文件包含在我的Bridging-Header-File中,我会遇到以下错误:

错误

所以我看到它是因为SuperpoweredRecorder.h包含一些.cpp文件而且我必须为cpp创建一个包装器(有点像我使用桥接头,没有?)但是包括.h和.mm文件我不喜欢我不知道我要把那个.mm文件放进去(代码是SuperpoweredRecorder.cpp什么?但是我无法访问它)

所以,是的,我对所有这些东西有点困惑,你能帮我理解如何在Swift项目中使用所有Superpowered lib吗?

c++ objective-c++ ios swift

11
推荐指数
1
解决办法
1916
查看次数

如何在iOS 10 Swift 3中创建水平轮播

最近我从Android世界切换到iOS.我已经看到了两种创建水平滑块的选项.我的目标是在此图像上创建一个水平的卡片滑块.水平viewpager卡我很困惑哪个元素需要iOS中最好的选项.我应该使用CollectionView还是应该使用PageViewController?由于我是初学者,因此我不能在现阶段使用图书馆,因为我的知识有限.请建议我该怎么做

ios swift3

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

如何使用Sprite Kit更改背景颜色

我正试图在Swift中使用Sprite Kit制作游戏,但我对背景颜色有一点问题.

我在Xcode上开始了一个新项目并选择了"游戏"预设和Sprite Kit.所以我有一个灰色背景的初学者项目,当我按下屏幕时会出现白色和太空飞船的"Hello World".

所以我删除了所有我不关心的代码,但是当我启动游戏时,我仍然有灰色背景,即使我尝试在GameScene.swift文件中更改它.

这是我的文件:

AppDelegate.swift

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate
{

var window: UIWindow?


func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    return true
  }

func applicationWillResignActive(application: UIApplication) {
    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user …
Run Code Online (Sandbox Code Playgroud)

background-color ios sprite-kit swift

3
推荐指数
1
解决办法
3093
查看次数

为什么Ruby包含?功能与AngularJS变量无法正常工作?

在我的Ruby on Rails应用程序的haml中,我试图通过AngularJS获取数组,ng-repeat并且只显示包含在另一个数组中的此数组的字符串.我试图在include?Ruby 的功能的帮助下实现这一点,以了解每个字符串是否在我的另一个数组中,但即使字符串在我的其他数组中,它也会返回false.

这是我调试此问题的代码(在评论我的"真实"代码中):

 %span.badge{"ng-repeat" => "competence_name in mymodel.get_competence_names track by $index"}
     = "{{competence_name}}"
     = current_user.get_competence_names
     = current_user.get_competence_names.include?("{{competence_name}}")
     -#- if current_user.get_competence_names.include?("{{competence_name}}")
         -#= "{{ competence_name }}"
Run Code Online (Sandbox Code Playgroud)

此代码显示:

Challenger ["Challenger", "Creative", "Innovative", "Results-oriented"] false
Run Code Online (Sandbox Code Playgroud)

注意,在行的末尾包括?应该返回true而不是false"挑战者"包含在数组中.

但如果我更换这一行:

= current_user.get_competence_names.include?("{{competence_name}}")
Run Code Online (Sandbox Code Playgroud)

通过这条线:

= current_user.get_competence_names.include?("Challenger")
Run Code Online (Sandbox Code Playgroud)

它显示true而不是false

所以我认为这是一个类型问题,"{{ competence_name }}"并没有String被Ruby 解释为.所以我试图替换"{{ competence_name }}",String.new("{{ competence_name }}")但它仍然返回假...

你知道问题的根源吗?

javascript ruby ruby-on-rails angularjs

0
推荐指数
1
解决办法
50
查看次数