gpt4 book ai didi

java - Android:TextView 未显示所有字母

转载 作者:行者123 更新时间:2023-11-29 02:41:50 24 4
gpt4 key购买 nike

一个简单的AlertDialog给了我意想不到的结果:丢失的字母。这只发生在 AlertDialog 中。在我的主题中,我将 monospace 设置为我的默认字体,然后我将 monospace 字体替换为客户提供给我的自定义字体 (.otf)。

我在 Android 25 上得到了预期的结果,并且可以在 19 上重现该问题。我不想尝试这些之间的任何版本。

我尝试过的一些事情:

  • 删除自定义字体以查看它是否是导致丢失所有文本而不是位的罪魁祸首。还尝试将自定义字体切换为 sans 或我的默认字体。

  • 创建自定义对话框主题

  • 更改颜色以查看文本是否以某种方式与背景相匹配,但我认为情况并非如此。

  • 硬编码文本。没有区别

  • 使用 android.app.AlertDialog 而不是 android.support.v7.app.AlertDialog。没有区别。

  • 我有 DatePickerDialog 和 TimePickerDialog 的样式。我试着把它们去掉,看看它们是否在干扰。显然不是,那些样式是 vs 21> 而我的问题是在 19 中。我没有为 AlertDialog 指定任何样式或主题。我的根主题是 Theme.AppCompat.DayNight.NoActionBar。主题的其余部分只设置原色和二次色。没有什么太奢侈的。

Android 25预期结果

enter image description here

Android 19 wtf 结果

enter image description here

这是代码的范围:

import android.support.v7.app.AlertDialog;

public static Maybe<Boolean> showConfirmDialog(Context context, int title, int message, int positive, int negative) {
return Maybe.create(e -> {
final AlertDialog dialog = new AlertDialog.Builder(context)
.setTitle(title)
.setMessage(message)
.setPositiveButton(positive, (d, w) -> e.onSuccess(true))
.setNegativeButton(negative, (d, w) -> e.onSuccess(false))
.show();

dialog.setOnDismissListener(d -> e.onComplete());

e.setCancellable(() -> {
if (dialog != null && dialog.isShowing())
dialog.dismiss();
});

});
}

我最终从头开始创建了一个对话框,因为我无法弄清楚我有多少时间发生了什么,但这让我很困扰,我需要找到一个解决方案。

最佳答案

我对 supprot alertdialog 有类似的问题。我通过自定义主题对话框解决了它。试试这个变体。添加到您的构建器自定义主题:

new AlertDialog.Builder(getContext(), R.style.DefaultAlertDialogTheme)

这里是你的 style.xml:

<style name="DefaultAlertDialogTheme" parent="Base.Theme.AppCompat.Light.Dialog">
</style>

关于java - Android:TextView 未显示所有字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43552979/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com