小编Sco*_*ran的帖子

在iOS上通过URL方案启动Viber应用程序

我正在制作一个iOS应用程序,它可以打开Viber应用程序并自动呼叫一个人或者与该人聊天窗口.是否有任何针对Viber的网址方案,例如:

viber://tel:<phone_number>
viber://chat:<phone_number>
Run Code Online (Sandbox Code Playgroud)

我关注链接,但它适用于Android.

url-scheme ios viber

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

NSNetServiceBrowser找不到已发布的服务

在iPhone(服务器)上,我试图发布一个服务,我的代码遇到了NSNetService对象的委托方法:

-(void)netServiceDidPublish:(NSNetService *)sender
Run Code Online (Sandbox Code Playgroud)

所以我相信我的服务@"_chatty._tcp."已成功发布.然后在另一个iPhone(客户端)上,我NSNetServiceBrowser用来查找我的服务,但它没有遇到委托方法:

-(void)netServiceBrowser:(NSNetServiceBrowser *)netServiceBrowser didFindService:(NSNetService *)netService moreComing:(BOOL)moreServicesComing
Run Code Online (Sandbox Code Playgroud)

我在这个网站上发现了一些与我的案例有关的问题,大多数答案提醒检查委托对象是否超出范围.我确信我的代表工作得很好,因为它遇到了另一个委托方法,如:

-(void)netServiceBrowserWillSearch:(NSNetServiceBrowser *)aNetServiceBrowser
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我找出原因吗?

以下是我的代码的一些部分:

我这样启动服务:

#define MY_PROTOCOL @"_chatty._tcp."

self.myService = [[NSNetService alloc]
                   initWithDomain:@"" type:MY_PROTOCOL
                   name:@"thaith" port:self.port];
Run Code Online (Sandbox Code Playgroud)

使用Browser类中的给定listenSocket初始化端口:

NSNetServiceBrowser* finder = [[NSNetServiceBrowser alloc] init];

//I also retain the finder.
finder.delegate = self;

[finder searchForServicesOfType:MY_PROTOCOL inDomain:@""];
Run Code Online (Sandbox Code Playgroud)

objective-c

5
推荐指数
2
解决办法
2460
查看次数

ios UITableView删除/重新排列编辑模式但不显示删除图标

我已经创建了一个UITableView处于编辑模式,我强制它在包含这个tableview的viewcontroller的viewDidLoad函数上运行到编辑模式.一切都很好,每行表左边都有一个删除图标,右边是re-arrange图标.我实施了

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
{
       return UITableViewCellEditingStyleDelete;
}

- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath 
{
     return YES;
}
Run Code Online (Sandbox Code Playgroud)

问题出在每一行我都不想在左边显示一个红色删除图标,只是在右边显示一个重新排列的图标.当用户想要删除时,他/她可以滑动一行进行删除.

我想这样做的原因是我不鼓励用户删除行产品.我明白我可以放一个编辑按钮,当用户点击这个按钮时,我会进入编辑模式,但我不想这样做,我想在用户进入我的viewcontroller时在开头显示重新排列功能.

我可以这样做吗

让我拍一些屏幕截图

这就是我得到的

这就是我想要展示的内容. 当用户滑动时,我想显示一个删除按钮,覆盖右侧的排列图标

第一张图是我得到的.

第二张图是我真正想要展示的.当用户滑动时,我想显示一个删除按钮,覆盖右侧的排列图标

iphone uitableview ipad ios

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

在fat文件上构建iOS框架缺少架构armv7s和x86_64

我正在按照网站上的指南构建我自己的框架

为iOS创建一个框架 - RayWenderlich

它运行良好,但是当我在测试项目中集成框架时,它会将错误视为"架构arm64的未定义符号".当我通过命令检查支持的体系结构时

<myframework>.framework xcrun lipo -info <myframework>
Run Code Online (Sandbox Code Playgroud)

它错过了2个架构armv7s和x86_64

这是我在Aggregate目标上的运行脚本

set -e

# If we're already inside this script then die
if [ -n "$RW_MULTIPLATFORM_BUILD_IN_PROGRESS" ]; then
exit 0
fi
export RW_MULTIPLATFORM_BUILD_IN_PROGRESS=1

RW_FRAMEWORK_NAME=${PROJECT_NAME}
RW_INPUT_STATIC_LIB="lib${PROJECT_NAME}.a"
RW_FRAMEWORK_LOCATION="${BUILT_PRODUCTS_DIR}/${RW_FRAMEWORK_NAME}.framework"

function build_static_library {
    # Will rebuild the static library as specified
    #     build_static_library sdk
    xcrun xcodebuild -project "${PROJECT_FILE_PATH}" \
    -target "${TARGET_NAME}" \
    -configuration "${CONFIGURATION}" \
    -sdk "${1}" \
    ONLY_ACTIVE_ARCH=NO \
    BUILD_DIR="${BUILD_DIR}" \
    OBJROOT="${OBJROOT}" \
    BUILD_ROOT="${BUILD_ROOT}" \
    SYMROOT="${SYMROOT}" $ACTION
}

function make_fat_library {
    # …
Run Code Online (Sandbox Code Playgroud)

frameworks ios

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

如何使用Facebook v4获得所有朋友

我正在使用Facebook v4.0.1集成到我的应用程序中.我使用FBSDKGraphRequest来获取好友列表

FBSDKGraphRequest *friendsRequest = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/friends" parameters:nil];
    FBSDKGraphRequestConnection *connection = [[[FBSDKGraphRequestConnection alloc] init] autorelease];
    [connection addRequest:friendsRequest
         completionHandler:^(FBSDKGraphRequestConnection *innerConnection, NSDictionary *result, NSError *error) {

         }];
    // start the actual request
    [connection start];
Run Code Online (Sandbox Code Playgroud)

它只返回大约25个朋友和一个名为分页的参数,以获得下一个朋友.

我如何使用分页来获取下一个或者有另一种方式让所有朋友一次

facebook ios

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

flutter 如何在类 GetView&lt;Controller&gt; 中实现动画

我正在启动一个 flutter 项目,很多人说 GetX 是在 flutter 中使用的最好的状态管理器框架,所以我决定使用它。

我想在 HomePage 类中做一些动画,但是当我使用 mixin SingleTickerProviderStateMixin 时,它会抛出一个编译错误

error: 'SingleTickerProviderStateMixin<StatefulWidget>' can't be mixed onto 'GetView<HomePageController>' because 'GetView<HomePageController>' doesn't implement 'State<StatefulWidget>'.
Run Code Online (Sandbox Code Playgroud)

这是我的代码

class HomePage extends GetView<HomePageController> with SingleTickerProviderStateMixin {
  final Duration duration = const Duration(milliseconds: 300);
  AnimationController _animationController;

  HomePage() {
     _animationController = AnimationController(vsync: this, duration: duration);
  }

  @override
  Widget build(BuildContext context) {
     return Container();
  } 

}
Run Code Online (Sandbox Code Playgroud)

因为要初始化 AnimationController,它需要一个名为“vsync”的参数,所以我必须实现 mixin SingleTickerProviderStateMixin。但是因为 GetView<> 没有实现 State 所以它会抛出编译错误。

我不知道在 GetX 中实现动画的正确方法是什么,奇怪的是我无法在 Google 或任何 flutter 社区上找到任何线索或指南,尽管 GetX 广泛流行

animation mixins flutter flutter-getx

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

在iOS上的UITextView上检测自动输入新行文本的换行符

在iOS应用程序的UITextView上输入时,如果文本超出了UITextView的宽度,UITextView将自动进入新行并继续输入,但问题是当文本输出时,它仍然只是单行文本.

'O'字符后,'M'字符自动分为新行

但是当我从这个textview获取文本时

NSString* newtext = textview.text;
Run Code Online (Sandbox Code Playgroud)

newtext的值将是"AAAAAAAAAAAAAAAAAAAAAAAAAAAAOMMM"(所有都是单行),但我预计它将是"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOMA"(注意'\n'字符通知新行)

有没有办法做到这一点

newline uitextview ios

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