小编nal*_*d88的帖子

Flutter:向图像添加浮动操作按钮

我正在尝试向图像添加浮动操作按钮。该按钮将用于更改所选图像。我希望按钮浮动在图像的右下角。到目前为止,我所能做的就是在图像正下方添加浮动操作按钮。谢谢你的帮助!

@override
Widget build(BuildContext context) {

  // Create the view scaffold. Use a list view so things scroll.
  return new Scaffold(
    appBar: new AppBar(
      title: new Text("My Title"),
    ),
    body: new ListView(
      children: [
        new Container(
          padding: EdgeInsets.zero,
          child: new Image.asset(
            "assets/images/background_image.png",
            fit: BoxFit.fitWidth,
          ),
        ),
        new FloatingActionButton(
          child: const Icon(Icons.camera_alt),
          backgroundColor: Colors.green.shade800,
          onPressed: () {},
        ),
        new Divider(),
        new ListTile(
          title: new Text('Email'),
          leading: const Icon(Icons.email),
          onTap: () {},
        ),
        new Divider(),
      ],
    ),
  );
}
Run Code Online (Sandbox Code Playgroud)

dart flutter

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

使用 Pybind11 包装 STL 容器返回类型

我想包装一个 C++ 函数(使用 Pybind11),它返回一个 STL 容器,它本身包装在一个智能指针中。一个例子如下所示。该函数已重载,因此我必须指定签名。

#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
#include "my_class.h"

typedef std::array<std::complex<double>, 4> ArrayComplex4;
PYBIND11_MAKE_OPAQUE(ArrayComplex4);

namespace py = pybind11;
using namespace my_namespace;

PYBIND11_MODULE(my_module, m) {
    py::class_<MyClass>(m, "MyClass", py::dynamic_attr())
        .def("my_function", (std::unique_ptr<ArrayComplex4> (MyClass::*)(double)) &MyClass::my_function)
        .def("my_function", (std::unique_ptr<ArrayComplex4> (MyClass::*)(double, double)) &MyClass::my_function);
}
Run Code Online (Sandbox Code Playgroud)

该模块将编译,但当我尝试在 Python 中使用该函数时会出错:

类型错误:无法将函数返回值转换为 Python 类型!

我确定我只是为 Pybind11 设置了错误的东西。谢谢你的帮助!

编辑

问题肯定是在我尝试绑定std::Array数据类型时。我最终修改了要使用的代码std::Vector,然后 Pybind11 没有问题。有关如何绑定std::Array容器的信息,请参阅下面的 AS Mackey 的回答。

c++ python pybind11

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

从C#调用非托管(C++)函数时出现PInvoke错误

我有一个我编写和测试的无人C++ DLL.在无人控制台应用程序中构建和运行时,无人管理的代码很好用.功能声明如下所示.

#ifndef IMPORT_MYLIB
#    define MYLIB_API __declspec(dllexport)
#else
#    define MYLIB_API __declspec(dllimport)
#endif

namespace gsod_data_parsing {
extern "C"
{
  MYLIB_API int parse_raw_gsod_file_nocb(
    const char *path,
    int temp_threshold
  );
}
}
Run Code Online (Sandbox Code Playgroud)

我试图从托管应用程序调用它.我在我的C#文件中声明了这个函数,如下所示:

 [DllImport("GSODDLL.dll")]
 public static extern int parse_raw_gsod_file_nocb(
   [MarshalAs(UnmanagedType.LPStr)] string path,
   int temp_threshold
 );
Run Code Online (Sandbox Code Playgroud)

然后,这些函数将在几个并行任务上执行,如下所示:

// Start a task - this runs on the background thread...
task1 = Task.Factory.StartNew(() => 
{
  int t1 = parse_raw_gsod_file_nocb(filePaths[i], this._frostTemp);
  return (t1 == 0);
}, this._tokenSource.Token);
Run Code Online (Sandbox Code Playgroud)

它似乎一开始运行正常但后来(我相信函数执行完毕后)我得到以下错误.

调用PInvoke函数'Database Creator!Database_Creator.Form1 :: parse_raw_gsod_file_nocb'使堆栈失去平衡.这很可能是因为托管PInvoke签名与非托管目标签名不匹配.检查PInvoke签名的调用约定和参数是否与目标非托管签名匹配.

我在这里看到了类似的问题 …

c# c++ dll pinvoke marshalling

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

如何安装独立的Android SDK,然后将其添加到Windows上的IntelliJ IDEA?

这是显示我下载SDK的网页:

这是下载的SDK的网页

在解压缩.zip文件夹,打开' tools '文件夹时,我可以在emulator.exe,mksdcard.exe和一系列.bat文件中看到所有文件(如下所示).

这是文件夹内容.

我该怎么办?

android intellij-idea android-sdk-tools

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

MATLAB从字符串中读取所有数字

我正在尝试从字符串中读取未知数量的数值.

例如:

line = 'bla bal bli : 3 5 12 15 266'
Run Code Online (Sandbox Code Playgroud)

我试过sscanf但它需要我知道字符串中有多少数字提前.

matlab parsing

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

Python正则表达式用单个字符替换空白块

我试图弄清楚如何用单个字符替换空白块.我有一个可能格式很差的文件,我想统一数据的分隔符.例如:

3,4  5\t6 \t 7            8 9
Run Code Online (Sandbox Code Playgroud)

然后会成为:

3,4,5,6,7,8,9
Run Code Online (Sandbox Code Playgroud)

类似于这个问题,但对于python.

python regex

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