小编Bry*_*hen的帖子

找到画布的大小

如何找出Canvas在xaml文件中创建的大小?

例如,我创建一个Canvas by

<Page
    x:Class="MyApp.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:MyApp"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

        <Canvas x:Name="canvas" Background="White">
        </Canvas>
</Page>
Run Code Online (Sandbox Code Playgroud)

全屏是白色或我为该画布指定的任何颜色

我在课堂上试过但没有运气

double h = canvas.Height; // NaN
h = canvas.ActualHeight;  // 0
Run Code Online (Sandbox Code Playgroud)

那么如何找出该画布的实际尺寸?或者大小是0而不是如何使画布全屏尺寸?

我是新的C#和都市开发人员,因此比起iOS的所有功能都很困惑.

c# xaml microsoft-metro windows-8

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

在目标C中使用alloc的目的

有什么区别

 NSNumber *number = [[NSNumber alloc]initWithInt:13];
Run Code Online (Sandbox Code Playgroud)

NSNumber *number = [NSNumber initWithInt:13];
Run Code Online (Sandbox Code Playgroud)

当两者都解决相同的目的时为什么要分配?

objective-c

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

覆盖ARC下的保留/释放

我有一个使用ARC的应用程序,它使用MRC(非ARC)静态库.在静态库中,retain/ release被覆盖以提供一些自定义弱引用/缓存行为([super retain/release]当然称为).问题是,在启用ARC的代码中不允许retain/ release不允许使用在启用ARC的代码中覆盖retain/的类是否可以release?目前它似乎运作良好,但我不确定这是否依赖于未来可能会破坏的未定义行为.

还有什么理由禁止覆盖retain/ release?是因为编译器完成了一些特殊的优化,绕过了消息绑定过程来加速方法调用?我知道_objc_storeStrong调用是由执行引用计数的编译器生成的,所以这是否意味着被覆盖retain/ release不能保证在ARC下被调用?

objective-c ios automatic-ref-counting

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

在启动时运行后台任务

我正在编写一个iOS应用程序,它使用Dropbox Datastore API在多个设备之间同步数据.

在Android上,我能够告诉服务在启动时启动,这使它能够同步设备关闭时可能发生的任何更改.

我无法找到一种明确的方式让我的应用在iOS上做同样的事情.

那么,有没有人有任何建议:

  • 在iOS上高效可靠地运行简单的后台服务.
  • 让服务在启动时启动

必须这样 - Facebook和Gmail等应用程序会在设备完成启动后立即开始同步.

background-process ios

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

如何正确找出lambda的返回类型

基本上如何使以下代码编译?

我知道它失败了,因为编译器试图评估类似的东西,([](int &i){})(0)但是如何解决该问题呢?

template <class TElement>
struct foo {
    TElement _e;
    foo(TElement e) : _e(e){}
    template <class Lambda>
    void bar(Lambda f) {
        using TResult = decltype(std::declval<Lambda>()(std::declval<TElement>()));
    }
};

int main() {

    foo<int>(0).bar([](int i){}); // compile
    foo<int>(0).bar([](int &&i){}); // compile
    foo<int>(0).bar([](int const &i){}); // compile
    foo<int>(0).bar([](int &i){}); // failed

}
Run Code Online (Sandbox Code Playgroud)

c++ c++11

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

复制与Block_copy()相同吗?

他们是一样的,copyBlock_copy()?怎么样?如果没有,有什么区别?

我好奇这一段时间,所以我决定做一些研究.

看看我发现了我的答案.

objective-c objective-c-blocks

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

Apple的Swift文档中有关if语句强制解包的错误?

我的关于"Swift编程语言"的iBook包含以下描述强制解包if语句的功能示例:

let possibleNumber = "123"
let convertedNumber = possibleNumber.toInt()

if convertedNumber {
    println("\(possibleNumber) has an integer value of \(convertedNumber!)")
} else {
    println("\(possibleNumber) could not be converted to an integer")
}
// prints "123 has an integer value of 123”
Run Code Online (Sandbox Code Playgroud)

但这不适合我.Xcode的(6.0.1)要求我明确地比较nil ,如

if (convertedNumber != nil) {
    println("\(possibleNumber) has an integer value of \(convertedNumber!)")
} else {
    println("\(possibleNumber) could not be converted to an integer")
}
Run Code Online (Sandbox Code Playgroud)

我的iBook错了吗?

swift

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

在 C++ 中使用 unique_ptr 的工厂模式

我在 C++ 中有一个旧的工厂实现,我想在其中使用唯一指针而不是原始指针。我的代码的一个最小示例如下。我有一个基类A和一个派生类B。在中main(),我传递1给中的create方法A,而b1现在的类型更改为B.

#include <iostream>
#include <map>

class A {
 public:
  A() {}
  virtual void Foo() {}
  std::map<int, A *> &registerType() {
    static std::map<int, A *> map_instance;
    return map_instance;
  }
  A *create(int n) { return registerType()[n]; }
};

class B : A {
 public:
  B() { registerType()[1] = this; }
  void Foo() { std::cout << "I am B!\n"; }
};

static B b0;

int …
Run Code Online (Sandbox Code Playgroud)

c++ factory smart-pointers this unique-ptr

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

angular2类型'主题<{}>'不能分配给'()=>主题<number>'

我使用angular2 rxjs来测试它的多播功能,这是我的代码:

var source = Observable.from([1, 2, 3]);
var subject = new Subject();
var multicasted = source.multicast(subject);

// These are, under the hood, `subject.subscribe({...})`:
multicasted.subscribe({
    next: (v) => console.log('observerA: ' + v)
});
multicasted.subscribe({
    next: (v) => console.log('observerB: ' + v)
});

// This is, under the hood, `source.subscribe(subject)`:
multicasted.connect();
Run Code Online (Sandbox Code Playgroud)

我收到了错误信息:

"Subject <{}>"类型的参数不能分配给类型的参数

'Subject<number> | (() => Subject<number>)'.
        Type 'Subject<{}>' is not assignable to type '() => Subject<number>'.
        Type 'Subject<{}>' provides no match for the signature '(): Subject<number>'
Run Code Online (Sandbox Code Playgroud)

multicast rxjs typescript angular

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

Gulp:在单个文件更改上运行jshint

在一个大型项目上,我正在运行gulp任务来分解和连接很多js文件.

在文件更改时,在重建所有捆绑包之前,运行jshint插件以验证任何js违规.

拥有大量的js文件,这些任务需要花费很多时间.

我想只在更改的文件上运行jshint,而不是在所有将被捆绑的文件上运行...任何关于如何从下面的任务开始的想法?

gulp.task("lint", function() {
    gulp.src("./src/**/*.js")
        .pipe(jshint())
        .pipe(jshint.reporter("default"));
});
Run Code Online (Sandbox Code Playgroud)

谢谢

javascript jshint gulp

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