Android 是否可以通过XML将我的布局设置为正方形并与两个维度之一成比例?
我认为这是办不到的,但我要问一下以防万一 我有一种情况,我希望网络视图是方形的。我需要它是两个可用维度中较小维度的80%,然后另一个维度的长度相同 因此,例如,如果用户在纵向模式下握住设备,我可以将父布局Android 是否可以通过XML将我的布局设置为正方形并与两个维度之一成比例?,android,layout,Android,Layout,我认为这是办不到的,但我要问一下以防万一 我有一种情况,我希望网络视图是方形的。我需要它是两个可用维度中较小维度的80%,然后另一个维度的长度相同 因此,例如,如果用户在纵向模式下握住设备,我可以将父布局weightSum设置为10,将WebView的水平layout\u weight设置为8,然后让它自动将高度调整为任意宽度 我知道如何在Java中运行时做到这一点,我想知道我是否忽略了一些可以实现相同效果的奇特的schmancy XML技术 它可以很好地处理图像(使用adjustViewBou
weightSum
设置为10,将WebView的水平layout\u weight
设置为8,然后让它自动将高度调整为任意宽度
我知道如何在Java中运行时做到这一点,我想知道我是否忽略了一些可以实现相同效果的奇特的schmancy XML技术
它可以很好地处理图像(使用
adjustViewBounds
和scaleType
),但这些参数对布局不可见 无法在SDK XML中完成
您必须使用代码,但IMHO不应该在片段/活动级别通过setLayoutParams()执行此操作,而应该在onMeasure()中对WebView(或其容器)进行子类化,并实现特殊的布局要求。不能在SDK XML中完成
您必须使用代码,但IMHO不应该在片段/活动级别通过setLayoutParams()进行操作,而应该在onMeasure()中对WebView(或其容器)进行子类化,并实现您的特殊布局要求。AFAIK,这本身并没有什么诀窍。您可以在Java中创建一个
SquareLayout
,并在XML中使用它,这样就不必到处重复Java代码。看:好吧,这本身并没有什么诀窍。您可以在Java中创建一个SquareLayout
,并在XML中使用它,这样就不必到处重复Java代码。见: