You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

API35中TextView垂直居中失效问题求助

Android 15(API35)TextView垂直居中偏移问题

我在Activity中通过如下代码创建TextView:

final int SIZE = 55, TEXT_SIZE = 40;

float d = getResources().getDisplayMetrics().density,
    sd = getResources().getDisplayMetrics().scaledDensity;
TextView tv = new TextView(this);
LinearLayout.LayoutParams llp = new LinearLayout.LayoutParams((int) (SIZE * sd), (int) (SIZE * sd));
llp.setMargins((int) (2 * d), (int) (2 * d), (int) (2 * d), (int) (2 * d));
llp.gravity = 0x31;
tv.setLayoutParams(llp);
tv.setGravity(Gravity.CENTER_HORIZONTAL|Gravity.CENTER_VERTICAL);
tv.setIncludeFontPadding(false);
tv.setText(s); // 文本内容不影响

tv.setTextLocale(Locale.JAPAN);
tv.setTextSize(TEXT_SIZE);

使用相同的Pixel 2硬件皮肤,分别在Android 14模拟器(API34)和Android 15模拟器(API35)中测试:

  • API34效果(调试时添加蓝色背景以查看视图边界):
    API34中TextView垂直居中效果(蓝色背景为视图边界)
  • API35效果:
    API35中TextView文本向下偏移效果

API34中文本垂直居中,但API35中文本明显向下偏移,字体外观一致,但无法查看内部布局(如内边距),推测是文本布局逻辑发生了未公开的变更。应用目标版本为API34,文本为日文(设备系统语言为英文),这可能是相关影响因素。

我希望实现文本垂直居中(或至少保持跨版本布局一致性),请问API35是否有我遗漏的新布局参数可以解决这个问题?

内容的提问来源于stack exchange,提问作者Seva Alekseyev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 21:22:02