小编Mat*_*rda的帖子

按钮上的多个单击侦听器

我想知道如何向XML定义的按钮中添加多个单击事件,就像以前在Java中一样,我们实现了View.onClickListenerinterface并完成了onClick方法中的其余工作。
例:

@Override
public void onClick(View v) {

switch (v.getId()) {

    case R.id.oneButton:
        // do your code
        break;

    case R.id.twoButton:
        // do your code
        break;

    case R.id.threeButton:
        // do your code
        break;

    default:
        break;
    }

}
Run Code Online (Sandbox Code Playgroud)

我正在用新的Kotlin开发一个基本的计算器应用程序,但是Kotlin似乎没有这样的规定,相反,我的代码看起来太冗长,因为我将事件分别附加到所有按钮上。
有人可以告诉我在Kotlin如何做同样的事情吗?谢谢

java android onclick button kotlin

5
推荐指数
4
解决办法
9450
查看次数

RuntimeError:线程只能启动一次

我正在制作一个简单的 Python 游戏。我试图修复以下错误:

RuntimeError:线程只能启动一次

我已经尝试过.cancel()计时器,但似乎不起作用,并且我已发表声明以在执行计时器之前if查看计时器是否有效.is_alive。控制台在 处抛出错误ball_char = play_timer.start()

def playball(state):
 batbox = [["@", "@", "@", "@"], ["@", "#", "#", "#", "@"], ["@", "#", "#", "#", "@"], ["@", "#", "#", "#", "@"], ["@", "@", "@", "@"]]
 play = "playing"
 play_timer = Timer(1.0, pitch(batbox))
 end_timer = Timer(6.0, pitch_end(play))
 play_timer.cancel()
 end_timer.cancel()
 pstate = "idle"
 inning = 1
 outs = 0
 pscore =0
 cscore = 0
 strikes = 0
 ball_row = 0
 ball_col = 0
 ball_char …
Run Code Online (Sandbox Code Playgroud)

python multithreading

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

自我背后的理论和用法是什么,包括C和C++中的源文件?

请参考此FASTLZ.C源代码.

  • 在第113行和第128行,它包含了自己的源文件.

我认为它的意图是两个定义的关于它们的FASTLZ_LEVEL宏值的函数名称.

#define FASTLZ_COMPRESSOR fastlz1_compress
#define FASTLZ_DECOMPRESSOR fastlz1_decompress
static FASTLZ_INLINE int FASTLZ_COMPRESSOR(const void* input, int length, void* output);
static FASTLZ_INLINE int FASTLZ_DECOMPRESSOR(const void* input, int length, void* output, int maxout);
#include "fastlz.c"
Run Code Online (Sandbox Code Playgroud)

#define FASTLZ_COMPRESSOR fastlz2_compress
#define FASTLZ_DECOMPRESSOR fastlz2_decompress
static FASTLZ_INLINE int FASTLZ_COMPRESSOR(const void* input, int length, void* output);
static FASTLZ_INLINE int FASTLZ_DECOMPRESSOR(const void* input, int length, void* output, int maxout);
#include "fastlz.c"
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚C语言中这个宏背后的理论或关键特性,有人可以简单解释一下这个场景吗?

c c++ gcc clang visual-c++

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

使用 JSON.NET 将 JSON 数组反序列化为字符串数组

我正在尝试将 JSON 数组反序列化为字符串列表:

Newtonsoft.Json.Linq.JArray jsonResponse = JsonConvert.DeserializeObject(result) as Newtonsoft.Json.Linq.JArray;
List<string> response = jsonResponse.ToObject<List<string>>();
Run Code Online (Sandbox Code Playgroud)

JSON 具有以下结构:

[[“没有可能的进口 Dos Numeros De Servicios Iguales”,“没有可能的进口 Dos Codigos Iguales”]]

但这会引发以下错误:

读取字符串时出错。意外标记:StartArray。路径“[0]”。

如何在没有错误的情况下反序列化对象?

.net c# json json.net

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

Pyspark:如何在数据框中重复n次?

我有一个这样的数据框,如果列n大于一个,我想将行重复n次:

A   B   n  
1   2   1  
2   9   1  
3   8   2    
4   1   1    
5   3   3 
Run Code Online (Sandbox Code Playgroud)

然后像这样转换:

A   B   n  
1   2   1  
2   9   1  
3   8   2
3   8   2       
4   1   1    
5   3   3 
5   3   3 
5   3   3 
Run Code Online (Sandbox Code Playgroud)

我想我应该使用explode,但我不明白它的工作原理...
谢谢

python bigdata pyspark

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

GitLab CI 的单元测试覆盖率

我正在尝试为 Python 项目之一设置单元测试覆盖率工具。我设法编写了 GitLab CI YML 文件的脚本,但它在触发时遇到了错误。这是我得到的错误:

ImportError while importing test module '/builds/user1/myProj/tests/test_run.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
tests/test_run.py:12: in <module>
    from data import prepare_data as pd
E   ImportError: No module named 'data'
=========================== 1 error in 0.06 seconds ============================
Run Code Online (Sandbox Code Playgroud)

在 中test_run.py,我有以下导入:

sys.path.append(os.path.abspath('../src'))
from data import prepare_data as pd
Run Code Online (Sandbox Code Playgroud)

这是我的 GitLab CI YML 文件:

- pip install -r requirements.txt
- python -m pytest -v --cov=myproj/ --cache-clear --color=yes tests/
Run Code Online (Sandbox Code Playgroud)

__init__.py在 src …

python unit-testing gitlab-ci pytest-cov

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

CreatedAtAction 之后使用 _context.AddRange() 进行 ECONNRESET - EF 2.0

在更改我的控制器以通过_context.AddRange(). 之前我是通过添加数据的_context.Entity.Add(),没问题。

我更改了插入方法,以便能够将 Lista(列表)实体添加到数据库,同时还将 n 个 Pessoa(人)实体和 n 个关系(列表 x 人)的列表插入到数据库。

尽管邮递员仍然“无法得到任何回复”,但插入全部成功。

知道为什么会发生这种情况吗?

    public async Task<IActionResult> PostListas(ListaFileInput input)
    {
        ...
        Listas lista = new Listas
        {
            OwnerId = userId,
            Lista = input.Lista
        };
        ...
        List<Pessoas> pessoas = csv.GetRecords<Pessoas>().ToList();
        foreach (Pessoas pessoa in pessoas)
        {
            pessoa.OwnerId = userId;
            _context.AddRange(new ListasXPessoas() { Lista = lista, Pessoa = pessoa });
        }

        await _context.SaveChangesAsync();

        return CreatedAtAction("GetListas", new { id = lista.ListaId }, lista);
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework-core asp.net-core-2.0

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

ASP.NET Core WEB API:具有条件的必需参数

我的财产需要7,30或60.

[Required]
public int FrequenciaConsulta { get; set; }
Run Code Online (Sandbox Code Playgroud)

有没有像'[Required]'那样检查值?

c# asp.net-core

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

如何使用 NodeJS 在 S3 Bucket 上上传 CSV 文件?

我正在从 JSON 内容动态创建一个 CSV 文件,并在 S3 存储桶上上传生成的 CSV 文件,而不是首先将文件保存在本地。

下面是我的代码片段,因为使用下面的代码将我的 CSV 文件上传到 S3 存储桶,但它似乎不是正确的 CSV 格式。

var uploadCSVFileOnS3Bucket = function(next, csvFileContent,results) {
    console.log("uploadCSVFileOnS3Bucket function started");
    var bufferObject = new Buffer.from(JSON.stringify(csvFileContent));
    var filePath = configurationHolder.config.s3UploadFilePath;
    var s3 = new AWS.S3();
    var params = {
        Bucket: 'bucket_name'
        Key: 's3UploadFilePath',
        Body: bufferObject,
        CacheControl:'public, max-age=86400'
    }
    s3.upload(params, function(err, data) {
        if (err) {
            console.log("Error at uploadCSVFileOnS3Bucket function",err);
            next(err);
        } else {
            console.log("File uploaded Successfully");
            next(null, filePath);
        }
    });
};
Run Code Online (Sandbox Code Playgroud)

另外,我正在使用“json2csv”npm 模块从 JSON 生成 csv …

csv amazon-s3 amazon-web-services node.js

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

无法自动服务

我正在尝试从FOSUserBundle(Symfony3.4)实现UserManager.

服务/ Register.php

<?php

namespace AppBundle\Service;

use FOS\UserBundle\Model\UserManager;


class Register
{
    private $userManager;

    public function __construct(UserManager $userManager)
    {
        $this->userManager = $userManager;
    }

    public function register() {
        $user = $this->userManager->findUserByUsernameOrEmail('aaa@gmail.clom');
        if($user){
            return false;
        }
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试调用此方法时,我得到:

无法自动装配服务"AppBundle\Service\Register":方法"__construct()"的参数"$ userManager"引用类"FOS\UserBundle\Model\UserManager"但不存在此类服务.您应该将此类别名为现有的"fos_user.user_manager.default"服务.

我现在应该怎么做?

php symfony fosuserbundle

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