小编Eve*_*lyn的帖子

在Excel中显示毫秒数

我试图在Excel宏中显示毫秒.我有一个整数列,它们是以毫秒为单位的时间戳(例如28095200是7:48:15.200 am),我想在它旁边创建一个新列,它保持运行平均值并以hh:mm:ss.000格式显示时间.

 Dim Cel As Range
 Set Cel = Range("B1")
 temp = Application.Average(Range("A1:A2")) / 1000
 ms = Round(temp - Int(temp), 2) * 1000
 Cel.Value = Strings.Format((temp / 60 / 60 / 24), "hh:mm:ss") _
                & "." & Strings.Format(ms, "#000")
Run Code Online (Sandbox Code Playgroud)

这只在单元格中显示"mm:ss.0".然而,当我点击单元格时,它会在公式栏中显示"hh:mm:ss".为什么缺少时间?如何显示小时,分钟,秒和毫秒?

excel time vba

115
推荐指数
2
解决办法
23万
查看次数

声音在AVAudioPlayer播放完成后执行操作?

我正在使用AVAudioPlayer框架,我有几个声音可以一次播放一个.声音播放结束后,我希望应用程序执行某些操作.我尝试使用audioPlayerDidFinishPlaying在第一个声音结束时执行操作,但我无法将其用于第二个声音,因为我遇到了重新定义错误.我可以使用NSTimeInterval来获取声音的持续时间吗?

//  ViewController.h
#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
#import <AVFoundation/AVAudioPlayer.h>

@interface ViewController : UIViewController {  
UIButton        *begin;
UIWindow        *firstTestWindow;
UIWindow        *secondTestWindow;
AVAudioPlayer   *player;
NSTimeInterval  duration;
}  

@property (nonatomic, retain) IBOutlet UIButton     *begin;
@property (nonatomic, retain) IBOutlet UIWindow     *firstTestWindow;
@property (nonatomic, retain) IBOutlet UIWindow     *secondTestWindow;
@property (nonatomic, retain)         AVAudioPlayer   *player;
@property (readonly)                   NSTimeInterval  duration;


- (IBAction)begin:(id)sender;
- (IBAction)doTapScreen:(id)sender;

@end



//ViewController.m
#import "ViewController.h"

@implementation ViewController

@synthesize begin, player, firstTestWindow, secondTestWindow;

//first sound
- (IBAction)begin:(id)sender; {

    [firstTestWindow makeKeyAndVisible];
    NSString *soundFilePath =
    [[NSBundle mainBundle] pathForResource: …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch nsdate avaudioplayer

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

Vagrant - paver devstack错误:"[Errno 20]不是目录"

我试图用Vagrant安装edx Devstack,我在Windows机器上.我收到的错误似乎是由Windows不支持的符号链接引起的.

根据Windows处理行结尾和符号链接下的edx故障排除指南,我应该在cygwin中运行以下命令来处理符号链接.

git rm --cached -r . && git reset --hard

git config --global alias.add-symlink '!__git_add_symlink(){
    dst=$(echo "$2")/../$(echo "$1"); 
    if [ -e "$dst" ]; then 
        hash=$(echo "$1" | git hash-object -w --stdin); 
        git update-index --add --cacheinfo 120000 "$hash" "$2"; 
        git checkout -- "$2"; 
    else 
        echo "ERROR: Target $dst does not exist!"; 
        echo "       Not creating invalid symlink."; 
    fi; 
    }; __git_add_symlink "$1" "$2"'

git config --global alias.rm-symlink '!__git_rm_symlink(){
    git checkout -- "$1"; link=$(echo "$1"); 
    POS=$'\''/'\''; DOS=$'\''\\\\'\''; …
Run Code Online (Sandbox Code Playgroud)

git vagrant edx devstack openedx

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

重新选择底部导航选项卡后Android清除后退堆栈

将最新的导航组件与 一起使用BottomNavigationViewNavController现在默认保存和恢复选项卡的状态:

作为此更改的一部分,onNavDestinationSelected()、BottomNavigationView.setupWithNavController() 和 NavigationView.setupWithNavController() 的 NavigationUI 方法现在会自动保存和恢复弹出目的地的状态,从而无需更改任何代码即可支持多个返回堆栈。当使用带有片段的导航时,这是与多个返回堆栈集成的推荐方法。

这很棒!现在,切换选项卡将为您提供最后查看的堆栈。

但是,如果用户重新选择一个选项卡,假设他们已经离开Home -> Detail Page A -> Detail Page B,然后他们选择Home希望返回到默认视图的选项卡,他们仍然会看到Detail Page B

似乎讨论的一部分是处理问题跟踪器中提到的“重新选择选项卡”行为,但我无法找出实现此目的的推荐方法。

NavigationAdvancedSample中包含的所有内容是:

val bottomNavigationView = findViewById<BottomNavigationView>(R.id.bottom_nav)
bottomNavigationView.setupWithNavController(navController)

// Setup the ActionBar with navController and 3 top level destinations
appBarConfiguration = AppBarConfiguration(
        setOf(R.id.titleScreen, R.id.leaderboard,  R.id.register)
    )
setupActionBarWithNavController(navController, appBarConfiguration)
Run Code Online (Sandbox Code Playgroud)

这只是恢复之前的状态,如发行说明中所述。

我们如何检查是否再次点击导航栏项目并清除后堆栈?

android android-navigation bottomnavigationview android-bottomnav android-architecture-navigation

11
推荐指数
3
解决办法
7106
查看次数

Android MediaPlayer - 缓冲时位置跳过

在某些设备上播放音乐时,我遇到了一种奇怪的行为.当音频首次开始播放时,位置会跳跃并且不稳定地播放,直到缓冲完全完成.

从Tutorials Point示例代码开始.我正在创建MediaPlayer OnCreate():

// Create Media Player
mediaPlayer = new MediaPlayer();
mediaPlayer.setOnBufferingUpdateListener(this);
mediaPlayer.reset();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
prepareMediaPlayer();
Run Code Online (Sandbox Code Playgroud)

prepareMediaPlayer 像这样设置数据:

private void prepareMediaPlayer() {

    try {
        mediaPlayer.setDataSource(myurl);
        mediaPlayer.prepareAsync();
        mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                Toast.makeText(getApplicationContext(), 
                        "Playing sound",Toast.LENGTH_SHORT).show();

                mediaPlayer.start();

            }
        });
    } catch (IOException e) {
        e.printStackTrace();
    }
}
Run Code Online (Sandbox Code Playgroud)

onBufferingUpdate打印出缓冲进度:

@Override
public void onBufferingUpdate(MediaPlayer mediaPlayer, int bufferingProgress) {
    Log.v(TAG, "onBufferingUpdate() "+bufferingProgress + 
            "\ncurrentposition: "+mediaPlayer.getCurrentPosition());

    seekbar.setSecondaryProgress(bufferingProgress);
}
Run Code Online (Sandbox Code Playgroud)

我得到的日志输出显示了当媒体播放器仍在缓冲时位置如何跳跃.我已经在一些设备上进行了测试,这只发生在Moto G上.这是固件中的错误还是我做错了什么?

08-29 12:50:17.934 277/com.test.mediaplayer V/audio-player: onBufferingUpdate() …
Run Code Online (Sandbox Code Playgroud)

java android motorola media-player

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

AndroidX数据绑定和Jetifier:不推荐使用,无法转换为注释

不再是迁移到AndroidX的烦恼...

我几乎完成了迁移,但是遇到了一个似乎无法逾越的错误。

已经尝试Clean & RebuildInvalidate Caches / Restart

似乎是将@Deprecated注入​​到无法识别的R.java文件中。

该应用程序的build.gradle文件很长,但是这里有相关部分(如果相关,可以发布更多内容):

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: "kotlin-android-extensions"

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
        jcenter()
        google()
    }

    dependencies {
        classpath 'com.google.gms:google-services:4.3.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

repositories {
    maven { url 'https://maven.google.com' }
    maven { url "https://jitpack.io" }
    maven { url 'https://maven.fabric.io/public' }
    maven { url 'http://www.idescout.com/maven/repo/' }
    maven { url "http://dl.bintray.com/populov/maven" }
}
android {
    compileSdkVersion 29
    defaultConfig …
Run Code Online (Sandbox Code Playgroud)

data-binding android gradle androidx android-jetifier

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

Android FirebaseUI 身份验证 - 如何重新进行身份验证?

相关问题:Firebase Auth UI 如何处理重新身份验证? (此问题针对iOS,未解决)

我想允许用户在 Android 上使用 FirebaseUI 更新他们的电子邮件/密码/等。

根据指南,“插入式”用户界面提供:

帐户管理- 用于处理帐户管理任务的流程,例如帐户创建和密码重置。

GitHub 上,看起来 AuthUI 管理页面功能仍在进行中(对吗?)

因此,我创建了自己的帐户管理页面,但其中一些操作是安全敏感的,需要重新进行身份验证

某些安全敏感操作(例如删除帐户、设置主电子邮件地址和更改密码)要求用户最近登录。如果您执行这些操作之一,而用户登录时间过长,则动作失败并抛出FirebaseAuthRecentLoginRequiredException

示例代码要求我们在将凭据传递给重新验证之前从用户那里检索凭据:

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

// Get auth credentials from the user for re-authentication. The example below shows
// email and password credentials but there are multiple possible providers,
// such as GoogleAuthProvider or FacebookAuthProvider.
AuthCredential credential = EmailAuthProvider
        .getCredential("user@example.com", "password1234");

// Prompt the user to re-provide their sign-in …
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-authentication firebaseui

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

React Native - Expo Audio 停止所有声音

我正在使用Expo Audio从列表中播放一些简短的声音。

async playAudio(file) {

    try {
        await Audio.setIsEnabledAsync(true);
        const sound = new Audio.Sound();
        await sound.loadAsync(file);
        await sound.playAsync(); 
    } catch(error) {
      console.error(error);
    }
}
Run Code Online (Sandbox Code Playgroud)

我从一个呈现的列表中调用 list.map()

renderTheList = (item, i) => {
    return (
        <View key={i}> 
            <TouchableOpacity onPress={ () => { this.onAudioSelected(item.audio) }}>
            </TouchableOpacity>
        </View>
    )
}

onAudioSelected(audio) {
    // Audio.clearSounds() <-- something like this
    playAudio(audio)

    ...
    }
Run Code Online (Sandbox Code Playgroud)

声音播放正常,但是当我选择列表中的下一项时,之前的声音并没有停止。所以如果我连续触摸一堆,就会同时播放一堆声音。

如何停止所有当前播放的声音?

audio-player react-native expo

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

如何在Cocoa Touch中将RGB转换为HSV?

我想使用HSV而不是RGB来设置标签的背景颜色.如何将其实现到代码中?

码:

//.m file

#import "IBAppDelegate.h"

@implementation IBAppDelegate


@synthesize label;

{
self.label.backgroundColor = [UIColor colorWithRed:1.0f
                                             green:0.8f
                                              blue:0.0f
                                             alpha:1.0f];
}
Run Code Online (Sandbox Code Playgroud)

rgb cocoa cocoa-touch hsv color-space

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

我可以将我在xcode中创建的iphone应用程序变成Web应用程序吗?

我在Xcode中为iphone做了一个应用程序,但是由于最近的发展,我现在需要将它变成一个Web应用程序.

我知道Dashcode创建适合iphone的Web应用程序.我可以以某种方式将我的Xcode项目导入Dashcode吗?或者我可以使用Xcode将其转换为Web应用程序而无需完全重写应用程序吗?

iphone xcode web-applications dashcode

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