gpt4 book ai didi

android - 让 ObtainStyledAttributes 在 xamarin for Android 中正常工作

转载 作者:搜寻专家 更新时间:2023-11-01 09:29:56 24 4
gpt4 key购买 nike

我正在 Xamarin.Android 中构建自定义控件,作为该控件初始化的一部分,我想读取该控件的指定高度。

我想使用 ObtainStyledAttributes,因为它为我提供了一种将字符串维度轻松转换为维度的方法。

所以我调用:

 context.ObtainStyledAttributes(attrs, new int [] { problemhere })

我遇到的问题是我不知道如何为 layout_height 指定常量(这是我要提取的参数)。当我查看 Xamarin 文档时,它指出定义了一个 Resource.Attribute.LayoutWidth const,但我无法在我的源代码中引用它。

我知道我也可以使用 getAttributeValue() 获取字符串,但它不会转换。

有什么想法吗?

最佳答案

您正在寻找 Android 操作系统级别的资源:

int[] attrsArray = { 
Android.Resource.Attribute.LayoutWidth,
Android.Resource.Attribute.LayoutHeight
};
var typedArray = context.ObtainStyledAttributes( attrsArray);
var layout_width = typedArray.GetDimensionPixelSize(0, ViewGroup.LayoutParams.WrapContent);
var layout_height = typedArray.GetDimensionPixelSize(1, ViewGroup.LayoutParams.WrapContent);

关于android - 让 ObtainStyledAttributes 在 xamarin for Android 中正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47932264/

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