小编Ral*_*kum的帖子

Android Studio 控制台输出?

当我在 Android Studio 上运行应用程序时,我读取了一些 GarbageCollection 输出:

05-11 16:18:20.973 12173-12183/com.example.myapp I/art: 后台部分并发标记清除 GC 释放 240546(10MB) AllocSpace 对象, 1(20KB) LOS 对象, 40% 空闲, 46MB/77MB,暂停 1.599ms 总计 121.211ms
05-11 16:18:54.304 12173-12183/com.example.myapp I/art:后台粘性并发标记清除GC释放419692(18MB)AllocSpace对象,0(0B)LOS对象,24%免费,58MB / 77MB,暂停 3.022ms 总计 201.084ms
05-11 16:19:15.368 12173-12183/com.example.myapp I/art:后台粘性并发标记清除GC释放252567(11MB)AllocSpace对象,0(0B)LOS对象,14%免费,65MB / 77MB,暂停 1.955ms 总计 160.700ms
05-11 16:19:28.274 12173-12183/com.example.myapp I/art: 后台部分并发标记清除 GC 释放 554566(28MB) AllocSpace 对象,0(0B) LOS 对象,39% 空闲,48MB/80MB,暂停 1.916ms 总计 200.094ms

这是什么意思?(我正在阅读包含超过 70k 行的大型 csv 文件)

performance android garbage-collection database-performance

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

如何将QPalette设置回默认系统调色板?

根据示例,我最初以深色主题启动应用程序。

我想让用户可以切换回其操作系统的当前默认系统颜色配置文件(在我启动该应用程序而未设置QPalette的情况下)。那有可能吗?

qt color-scheme qstyle qt5 qpalette

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

所需空间最小的 QLayout

我有一个 QVBoxLayout,其中我在运行时动态添加其他 QWidget :

for(int i = 0; i < value; i++)
{
    QList<QWidget*> widgetList_i;
    //... widgetList_i.append(a lot of widgets)
    ui->verticalLayout->addWidget(widget_i);
}
Run Code Online (Sandbox Code Playgroud)

这些添加的小部件之间有很多浪费的空间:

动态 QWidegt 之间的空间被浪费

当我运行应用程序时,我可以用鼠标压缩高度。

用鼠标拖动边框压缩空间

使用限制每个widgetList_i小部件的高度setMaximumheigth()是一个很好的方法,但是我在开头和结尾浪费了空间:

最大高度

仅添加 aui->vertivalLayout->addStretch(1);会导致末尾出现空白。该布局的开头很好:

在此输入图像描述

添加 QSpacerItem 会使情况变得更糟:

空间项目

是否有一个函数可以将添加的小部件的布局高度设置为最小值?

qscrollarea qt5 qlayout qvboxlayout

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

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

如何仅显示可组合项几秒钟?

我有一个Text可组合项Box

Box(modifier = Modifier)
) {
    Text(text = "BlaBla"    )
}
Run Code Online (Sandbox Code Playgroud)

如何仅显示框/文本几秒钟?

android-jetpack android-jetpack-compose android-jetpack-compose-text

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

为 QWidget 派生移动赋值运算符?

我有一个 QWidget 衍生物,让我们假设标准 QWidget 示例

class MainWindow : public QMainWindow { //.. }
Run Code Online (Sandbox Code Playgroud)

对于此类 MainWindow 来说,满足五规则是否有意义,我的意思是特别是 Move 构造函数和移动赋值?

(因为主窗口应该只创建一次)

c++ qt move-semantics qt5

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

Ktlint 因通配符导入失败(无法自动更正)

当我运行gradlew ktlintCheck它失败了很多

通配符导入(无法自动更正)

错误。

gradle kotlin android-studio ktlint

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

如何从两个 Widget 组合一个新的 UI 元素?

图片 我在 Android 中有一个普通按钮和一个星形图标。我想将它们组合成一个新的按钮图标,其中星星位于右上角之一,如下所示:

在此输入图像描述

当我使用时,Row两者是分开的。正如您所看到的,星形应与按钮的一角重叠。我怎样才能做到这一点?

编辑:感谢加布里埃尔·马里奥蒂,我用了

Box {

    Button(
        id = "btnButton",
        modifier = Modifier
            .padding(end = 48)
        onClick = {
            //..
        }
    )

    IconWithStar(
        modifier = Modifier
            .scale(0.65f)
    )
}
Run Code Online (Sandbox Code Playgroud)

左上角绑定了星形图标,我该如何修改?

android android-jetpack android-jetpack-compose

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

如何设置条件属性?

在 Kotlin 和使用 Jetpack Compose 中,我有很多代码,例如:

Box(
    modifier = Modifier
        .fillMaxHeight()
        .requiredWidth(expandedSize)
        .align(Alignment.Center)
)
Run Code Online (Sandbox Code Playgroud)

但很多时候我想根据条件设置一个属性:

if(isFlag){
    Box(
        modifier = Modifier
            .fillMaxHeight()
            .requiredWidth(expandedSizeA)
            .align(Alignment.Center)
    )
} else {
    Box(
        modifier = Modifier
            .fillMaxHeight()
            .requiredWidth(expandedSizeB)
            .align(Alignment.Center)
    )
}
Run Code Online (Sandbox Code Playgroud)

或类似或requiredWidth()的条件padding()

if(isFlag){
    Box(
        modifier = Modifier
            .fillMaxHeight()
            .requiredWidth(expandedSizeA)
            .align(Alignment.Center)
    )
} else {
    Box(
        modifier = Modifier
            .fillMaxHeight()
            .padding(80.dp, 30.dp, 80.dp, 0.dp)
            .align(Alignment.Center)
    )
}
Run Code Online (Sandbox Code Playgroud)

我敢打赌有一种优雅的 Kotlin 方法可以做到这一点?

kotlin android-jetpack-compose

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

使用什么 Gitlab 工具来生成代码覆盖率报告?

有人告诉我,不使用 JaCoCo,而是会有一个内部 Gitlab 工具,我可以在其中创建测试覆盖率报告?

  • 我不想使用 JaCoCo。
  • 我对 Gitlab 中的任何可视化插件都不感兴趣。
  • 我想生成一个 xml/html 文件,其中包含条形图等,可以通过电子邮件发送并在外部打开。

我在 Gitlab 仪表板菜单中找不到任何内容。该项目是一个 Android App Kotlin 项目。

kotlin gitlab test-coverage gitlab-ci

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