小编dar*_*bid的帖子

我应该如何将 debounce 与 MutationObserver 结合起来

我想知道突变何时停止被调用。因此我正在实施去抖。然而我的 console.log('*****Debounced ****'); 从未被调用过。

您能帮助我了解我做错了什么吗?

var target = document.body;
var observer = new MutationObserver(function(mutations) 
{
    mutations.forEach(function(mutation) 
        {
            for (var i = 0; i < mutation.addedNodes.length; i++) 
                {
                    var item = mutation.addedNodes[i];
                    console.log(item);
                    myCustomFunction
                }
        });
});         

observer.observe(document, {childList: true, subtree: true});

var myCustomFunction = debounce(function() 
               {
                   console.log('*****Debounced ****');
                   //call some method do more work etc
                }, 500);

function debounce(func, wait, immediate) 
{
var timeout;
return function() {
    var context = this,
        args = arguments;
    var later = function() {
        timeout …
Run Code Online (Sandbox Code Playgroud)

javascript mutation-observers debouncing

7
推荐指数
0
解决办法
2676
查看次数

MS System.Speech.Recognizer和SpeechRecognitionEngine的准确性

我目前正在通过从xml文件加载一个非常简单的规则来测试SpeechRecognitionEngine.事实上,它是一个简单的("解密电子邮件","删除加密")或("加密电子邮件","添加加密").

我已经训练了我的Windows 7 PC,并且还添加了加密和解密这两个词,因为我发现它们非常相似.识别器已经存在使这两者产生差异的问题.

我遇到的问题是它经常识别事物.我已经把信心设置为0.93,因为我的声音在一个安静的房间里,说的确切的话有时只会达到0.93.但是,如果我打开收音机,播音员或歌曲的声音可能意味着这个识别器认为它已经以超过0.93的信心听到了"decrpyt the email".

也许Lady Gaga正在回击Applause秘密解密电子邮件:-)

任何人都可以帮助解决如何做一些事情,使这个识别器可行.

事实上,识别器也在拾取键盘噪音,因为"解密了电子邮件".我不明白这是怎么可能的.

对于我的编辑伙伴,MS Speech Microsoft.Speech和System.Speech至少有两个托管命名空间 - 对于这个问题,重要的是要知道它是System.Speech.

.net c# vb.net speech-recognition

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

如何让UIView在进入图像之前正确布局

我正在使用此代码将UIView呈现为图像

-(UIImage *)getImageForView:(UIView *)aView {     
UIGraphicsBeginImageContextWithOptions(aView.bounds.size, NO, 0.0);
[aView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return viewImage;
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是使用autolayout未正确设置视图.我该怎么办.

我目前创建一个UIView"viewA",其框架是我视图的正确大小,然后创建我复杂的预期视图"ViewB"(其上有自动布局),然后将viewB作为子视图添加到"viewA"然后我给viewA到我上面的方法.

首先我认为viewA不必添加到某个superview但它没有正确布局,如果我将viewA与alpha为0添加到superview,那么我假设可能会使用"layoutIfNeeded"但是应该在哪个视图上我这样做?

编辑:这是创建UIView的代码

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 439)];

//This is the UIView that contains a lot of views
MyView *myView = [[MyView alloc] init];

myView.translatesAutoresizingMaskIntoConstraints = NO;

[view addSubview:myView];

[view addConstraints:[NSLayoutConstraint
                      constraintsWithVisualFormat:@"V:[myView(439)]"
                      options:0
                      metrics:nil
                      views:NSDictionaryOfVariableBindings(myView)]];

[view addConstraints:[NSLayoutConstraint
                      constraintsWithVisualFormat:@"H:[myView(320)]"
                      options:0
                      metrics:nil
                      views:NSDictionaryOfVariableBindings(myView)]];
Run Code Online (Sandbox Code Playgroud)

最终为我工作的是什么

[myView layoutIfNeeded];
[view layoutIfNeeded];
Run Code Online (Sandbox Code Playgroud)

换句话说,在两个视图上调用它.

uiview ios autolayout

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

Autolayout高度成比例但具有上限约束

UI工作表设计

我正在尝试使用Autolayout和仅使用Interface Builder在所有四个iPhone设备中生成具有2个视图的以下场景.如图所示,我希望视图2(底视图)在iPhone 4上不小于45点,并且永远不会高于65点.如果您对解决方案的想法使用某种比例,则View2不必完全是附加图像中指定的点数.

xcode interface-builder ios autolayout

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

如何在iOS6中使用autolayout更改UIView大小?

我理解iOS6中新的自动布局技术的想法是你不再需要设置框架,而是按意图编码?

继续在运行时,如果我通过其框架更改UIView大小,则其任何子视图当前都不会移动并随视图一起更改.

因此我为UIView创建了一个约束出口,并改变了这个约束的常量.这会更改UIView的大小,并且所有子视图也会相应地移动.

我在这里走在正确的轨道上吗?这是我在自动布局下改变UIView尺寸的假设吗?

iphone ios autolayout

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

使用摇动效果左右动画 WPF 窗口?

有人可以告诉我如何从当前位置为窗口设置动画。我正在寻找一种摇动效果,它可以简单地左右摇晃窗户 5 到 6 次。

我知道我需要使用 Animation.By。这是我已经开始但还没有走远的事情。

但是这不起作用。

<Storyboard x:Key="sbShake1" FillBehavior="Stop">
    <DoubleAnimation Storyboard.TargetName="W1" Storyboard.TargetProperty ="(Window.Left)"
                     By="10" Duration="0:0:1">
    </DoubleAnimation >
</Storyboard >
Run Code Online (Sandbox Code Playgroud)

我设法获得了正确的抖动效果,但我无法从 Windows 当前位置做到这一点。

<Storyboard x:Key="sbShake" RepeatBehavior ="00:00:01" SpeedRatio ="25" >
    <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty ="Left">
        <SplineDoubleKeyFrame KeyTime ="00:00:00.1000000" Value ="-10"/>
        <SplineDoubleKeyFrame KeyTime ="00:00:00.3000000" Value ="0"/>
        <SplineDoubleKeyFrame KeyTime ="00:00:00.5000000" Value ="10"/>
        <SplineDoubleKeyFrame KeyTime ="00:00:00.7000000" Value ="0"/>
    </DoubleAnimationUsingKeyFrames >
</Storyboard >
Run Code Online (Sandbox Code Playgroud)

所有帮助将不胜感激。

c# wpf animation wpf-controls

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

无法验证 AzureAD 本机客户端应用程序

我已经注册了一个 AzureAD 应用程序,它是公共客户端/本机客户端。

我在门户中使用 Azure 生成的标准代码。

重要的是

    static App()
    {
        _clientApp = PublicClientApplicationBuilder.Create(ClientId)
            .WithLogging((level, message, containsPii) =>
            {
                System.Diagnostics.Debug.WriteLine("*************************");
                System.Diagnostics.Debug.WriteLine($"{level}: {message}");
            }, LogLevel.Verbose, true, true)
            .WithAuthority($"{Instance}{Tenant}")
            .WithRedirectUri(RedirectURI)
            .Build();
        TokenCacheHelper.EnableSerialization(_clientApp.UserTokenCache);
    }
Run Code Online (Sandbox Code Playgroud)

         authResult = await app.AcquireTokenInteractive(scopes)
                    .WithAccount(accounts.FirstOrDefault())
                    .WithParentActivityOrWindow(new WindowInteropHelper(this).Handle) // optional, used to center the browser on the window
                    .WithPrompt(Prompt.SelectAccount)
                    .ExecuteAsync();
Run Code Online (Sandbox Code Playgroud)

返回的错误是;

“AADSTS7000218:请求正文必须包含以下参数:“client_assertion”或“client_secret”。

例如,按照我在此处和 AzureAD 中的大多数地方阅读的内容,我已将默认类型更改为公共客户端。

我仍然遇到同样的错误。

我已启用日志记录,我认为我有下面的相关部分

信息:(错误)MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0(UnknownClient:0.0.0.0)从 /authorize 端点检索到授权代码。信息:(False) MSAL 4.13.0.0 MSAL.Desktop Microsoft Windows NT 6.2.9200.0 (UnknownClient: 0.0.0.0) 交换令牌的身份验证代码信息:(False) MSAL 4.13.0.0 MSAL.Desktop …

azure-active-directory azure-ad-msal

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

为什么我仍然看到发布者未知的UAC提示?

我创建了自己的CA,然后是.pfx文件.我正在使用Wix工具集来构建安装程序.

在wix项目文件中,我用以下内容编辑了它;

<PropertyGroup>
    <SignOutput>true</SignOutput>
</PropertyGroup> 

<PropertyGroup>
    <sourceRoot>$(OutputPath)..\..</sourceRoot>
</PropertyGroup>


<Target Name="SignMsi">
     <Exec Command='"$(sourceRoot)\Keys\signtool.exe" sign /v /f "$(sourceRoot)\Keys\myCA.pfx" /t http://timestamp.verisign.com/scripts/timstamp.dll /v /d "%(SignMsi.Filename)" "@(SignMsi)"' />
</Target>

<Target Name="SignCabs">
    <Exec Command='"$(sourceRoot)\Keys\signtool.exe" sign /v /f "$(sourceRoot)\Keys\myCA.pfx" /t http://timestamp.verisign.com/scripts/timstamp.dll /v /d "%(SignCabs.Filename)" "@(SignCabs)"' />
</Target>
Run Code Online (Sandbox Code Playgroud)

然后我在Visual Studio中构建它,它成功构建,甚至签名显示成功.

然而,在UAC的推动下,它仍然是出版商未知的.

.net windows-installer wix

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

如何使用scrollToItemAtIndexPath将具有内容偏移量的单元格置于UICollectionView中

我正在实现一个UICollectionView,它只显示一行单元格.它就像一个图像封面流程.这意味着我已经将UICollectionViewFlowLayout子类化了.当我用手指滚动时,我的实现工作正常,这意味着调用了以下委托方法,我将单元格置于中心位置;

-(CGPoint)targetContentOffsetForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity
Run Code Online (Sandbox Code Playgroud)

但是,当视图加载时,我希望视图自动滚动到单元格.对于这个自动滚动我使用以下内容;

[self.CollectionView scrollToItemAtIndexPath:_selectedIndexPath atScrollPosition:UICollectionViewScrollPositionCenteredHorizontally animated:YES];
Run Code Online (Sandbox Code Playgroud)

问题是没有调用targetContentOffsetForProposedContentOffset,因此当自动滚动完成时,单元格偏离中心.

那么我怎么能以编程方式滚动我的集合视图,以便它也将中心滚动到的单元格?

objective-c uicollectionview uicollectionviewlayout

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