为什么 Android 视图值在运行时不同?

麦夸克

我正在尝试运行以下单元测试代码片段,但它失败了:

final TextView textView = mView.findViewById(R.id.title);
assertEquals(View.TEXT_ALIGNMENT_VIEW_START, textView.getTextAlignment()); // FAILS

文本对齐在布局文件中设置如下:

<TextView
    ...
    android:textAlignment="viewStart" />

当我像这样以编程方式设置文本对齐方式时,测试甚至没有成功:

final TextView textView = mView.findViewById(R.id.title);
textView.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_START);
assertEquals(View.TEXT_ALIGNMENT_VIEW_START, textView.getTextAlignment()); // STILL FAILS

可能是什么问题呢?当我使用 getter 从 TextView 对象获取时,为什么该值与常量不同?

我已经检查了两个值的确切 int 值是什么。TEXT_ALIGNMENT_VIEW_START 是 5,但是当我从 TextView 对象获取文本对齐值时,我得到 1。

加布·塞尚

因为在运行时这会转换为 ALIGN_LEFT 或 ALIGN_RIGHT,具体取决于语言环境的 LTR。它没有保留为 VIEW_START 并重新计算。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么Ruby调试器在运行时返回与代码不同的值?

为什么我的按钮视图ID在运行时更改?

什么时候在运行时为Android Marshmallow 6.0请求权限?

为什么在运行时重新定义的此方法不保留其值?

为什么@Nonnull标注在运行时检查?

为什么@Nonnull标注在运行时检查?

为什么该程序在运行时出现错误

为什么这个简单的strcat在运行时崩溃?

为什么在运行时未实现重载?

升级到 Android Studio 4.1 后,为什么我的 CheckBox 控件中的文本在运行时不显示(但在设计模式下显示)?

Android布局在运行时将视图替换为另一个视图

为什么在Android中使用Recycler View时出现运行时异常

为什么Android Logcat不显示运行时异常的堆栈跟踪?

Android:在运行时获取TargetSDKVersion

Android在运行时保存变量

在运行时访问Android内存

在valgrind中运行时,sqlite为什么会存储不同的值?

为什么我的图像出现在 Android Studio 设计视图中,而在手机中运行时却没有?

运行时间不同的代码几乎相同-为什么?

在Android中使用socket.io时如何在运行时获取视图?

为什么不整形?Nat有一种在运行时访问其值的方法?

忽略视图Android XML运行时

在Android运行时更新视图

为什么我的程序在运行时在命令窗口中什么都不输出?

Android如何在运行时更改倒数计时器值

为什么在运行简单的docker映像时出现oci运行时错误?

C ++映射值在运行时未更改,我在做什么错?

为什么要引入运行时?

为什么自动布局约束不会在运行时出现?