小编Fly*_*ast的帖子

Xcode 8中缺少"任何"大小类

在Xcode 8 beta中看到新界面构建器的大小类选项时,我有点困惑.我曾经通过首先在"任何"大小类中设计它们来构建我的应用程序的UI,然后在其他类型中进行一些自定义调整.是否应该在这个新版本的Xcode中更改工作流程?

Xcode 7中的任何大小类

xcode interface-builder ios

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

如何在UICollectionView中每行显示3个单元格?

我根据这篇文章使用了自定义流程布局.这是我的实现:

@implementation CustomLayout
-(void)prepareLayout{
[super prepareLayout];
//    [self invalidateLayout];
if(self.collectionView){
    CGSize newItemSize=self.itemSize;

// Number of items per row
    int itemsPerRow=3;

    float totalSpacing=self.minimumLineSpacing*(itemsPerRow-1);

    newItemSize.width=(self.collectionView.bounds.size.width -totalSpacing)/itemsPerRow;

    if(self.itemSize.height>0){
        float itemAspectRatio=self.itemSize.width/self.itemSize.height;
        newItemSize.height=newItemSize.width/itemAspectRatio;
    }

    [self setItemSize:newItemSize];

}


}
@end
Run Code Online (Sandbox Code Playgroud)

这就是我所拥有的: 结果 我错过了什么?我遇到过其他一些SO帖子但到目前为止没有运气.

objective-c ios uicollectionview uicollectionviewlayout

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

InvalidOperationException 执行两次处理时

我必须编写一个异步方法来与 Web 服务联系。这是我在 WebServiceHelper 类中的方法:

 public static Task<int> SignIn(string username, string password) 
    {

        try
        {
            TaskCompletionSource<int> tcs = new TaskCompletionSource<int>();
            service.LoginCompleted += (object sender, WebService.LoginCompletedEventArgs e) => 
            {
                if (e.Error != null) tcs.SetResult(-1);
                else
                    tcs.SetResult((int)e.Result);

            };
            service.LoginAsync(username, password);
            return tcs.Task;
        }
        catch (Exception ex)
        {

            MessageBox.Show("Error: " + ex.Message);
            return null;
        }

    }
Run Code Online (Sandbox Code Playgroud)

然后我在一个按钮点击事件中调用它,如下所示:

private async void btLogIn_Click(object sender, RoutedEventArgs e)
    {                       
        try
        {
            int si = await WebServiceHelper .SignIn(tbUsername.Text, tbPassword.Text);               
            if (si != 0) MessageBox.Show("Signed in successfully!");
            else MessageBox.Show("Couldn't …
Run Code Online (Sandbox Code Playgroud)

.net wcf windows-phone-8

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

为Unity构建一个简单的在线游戏服务器

我正在尝试为我的坦克游戏2D(Unity)构建一个在线游戏服务器.在我的游戏中,将有2-4名玩家控制他们的坦克并互相争斗.

  • 我试过使用Unity网络,它不适合我的游戏,因为我们必须选择房间里的1个玩家成为"服务器",这对我未来的发展来说并不是很灵活(例如当"服务器"退出,我必须做很多工作来保持其他玩家之间的联系).

  • 然后我尝试用Nodejllàsocket.io构建我自己的服务器,用于服务器 - 客户端通信.它非常简单:从一个接收数据并将其广播到其他人.它似乎工作正常,直到物理部分进入:服务器必须信任客户端,当他们说有什么东西被击中或爆炸,然后广播到其他客户端.更不用说受骗的客户端,由于网络延迟,客户端的物理模拟会有所不同.例如,一个坦克可能会被撞到这个客户端,但它应该被覆盖在另一个的墙后面并保持活着,但是由于潜伏期,他身后的坦克会抓住子弹并爆炸.在这些情况下,服务器不知道要收听哪一个.

更新

  • 正如下面提到的@Catwood,Photon PUN对我来说是另一种选择.之前我曾经按照他们的一个教程.Photon不需要播放器就像Unity网络一样是"服务器".但是如何在服务器上实现我的游戏逻辑呢?(用于权威服务器目的)
  • 显然,Smartfoxserver是另一个好的(和昂贵的)选项.我没有深入了解他们的API文档.我不知道我是否可以实现我的游戏逻辑和规则(为简单起见,他们的教程跳过这一部分).

总之,我需要一个关于我的游戏服务器的建议:

  • 是权威服务器
  • 可以处理游戏规则并决定会发生什么(也许应该有自己的物理引擎)
  • 适用于Unity2D
  • Javascript,C#,Java是首选!

我是否正确的方向,因为看起来像一些游戏服务器服务(如Photon,Unity网络)只是不关心如何在服务器上实现游戏逻辑.它是否使它们不是权威服务器?

我对这个领域很新,任何事都会受到赞赏!

multiplayer game-engine unity-game-engine

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

如何删除NSMutableSet中的多个元素?

我们可以NSMutableArray通过使用removeObjectsInArray:函数删除多个元素.是否NSMutableSet有任何类似的功能?

cocoa-touch objective-c ios

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

Apple从当前位置映射路由请求URL

我现在正在考虑一个适用于iOS的应用程序,该应用程序可以通过URL链接向其他人(没有Internet连接)发送短信,以便在他们点击链接时让他们离线指向我在原生地图应用中的位置.我知道可以使用这种URL完成:

http://maps.apple.com/maps?saddr=<their location>&daddr=<my location, filled by my app>
Run Code Online (Sandbox Code Playgroud)

当然,我可以saddr留空,让他们从自动完成列表中选择他们当前的位置作为起始点,但是他们还需要再迈出一步才能获得方向.我只想确保给​​他们最方便的方式.

如何引导原生地图应用程序通过此URL自动获取SMS接收者用户的当前位置?我需要这样的东西:

http://maps.apple.com/maps?saddr=current_location&daddr=<my location, filled by my app>
Run Code Online (Sandbox Code Playgroud)

我也想将此链接发送给其他平台用户,就像我可以使用的Android用户一样:

http://maps.google.com/maps?saddr=current_location&daddr=<my location, filled by my app>
Run Code Online (Sandbox Code Playgroud)

Windows Phone(我还不知道):

http://maps.???.com/maps?saddr=current_location&daddr=<my location, filled by my app>
Run Code Online (Sandbox Code Playgroud)

任何关键字或答案将非常感谢!

maps google-maps ios

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