gpt4 book ai didi

android - 以编程方式计算textview的宽度

转载 作者:太空狗 更新时间:2023-10-29 14:55:03 31 4
gpt4 key购买 nike

我想以编程方式创建 TextView ,如果它适合设备屏幕则水平显示,否则显示在下一行。

我有屏幕的可用宽度和一些文本。基于该文本,我想创建 textview 并显示它。我还有其他文本,如果适合的话,我想在第一行显示。否则,它应该在下一行。唯一的问题是我无法根据文本获取 textview 的宽度。我不能使用 wrap_content,因为它不会给我它的宽度值。

最佳答案

在包含您的 TextView 的 Activity 中,实现此接口(interface);

global::Android.Views.ViewTreeObserver.IOnGlobalLayoutListener

这将使您实现 OnGlobalLayout 方法。

您还需要添加;

rootLayout = FindViewById<RelativeLayout>(Resource.Id.rootLayout);
rootLayout.ViewTreeObserver.AddOnGlobalLayoutListener(this);

此处的根布局可以是包含 TextView 的根布局。

关于您实现的方法,

public void OnGlobalLayout()
{
if (textView != null)
{
int height = textView .Height;
}
}

如果调用 textView.HeighttextView.Width,它将在创建 View 后返回 textview 的真实宽度和高度,而不是换行内容-1 值。

关于android - 以编程方式计算textview的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32286587/

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