0

我是 Android 新手,所以这个问题可能很愚蠢,但是,是否可以通过选择器更改视图上的 layout_height?我正在尝试制作一个自定义 TabHost/TabWidget,我必须根据它们的选择状态更改一些视图。这就是我想要实现的目标:

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_selected="true" android:height="10dp" />
    <item android:height="5dp" />
</selector>

然后我试图将此选择器附加到 View 中,如下所示:

<View android:layout_height="@drawable/tab_lineheight_selector" ... />

我显然做错了什么,因为我的应用程序不断崩溃。甚至可能吗?

4

1 回答 1

1

根据开发人员文档:

机器人:布局高度

指定视图的基本高度。这是包含布局管理器内的任何视图的必需属性。它的值可以是固定高度或特殊常数之一的尺寸(例如“12dip”)。可能是一个维度值,它是一个浮点数加上一个单位,如“14.5sp”。可用单位有:px(像素)、dp(与密度无关的像素)、sp(基于首选字体大小的缩放像素)、in(英寸)、mm(毫米)。这也可能是对包含此类型值的资源(形式为“@[package:]type:name”)或主题属性(形式为“?[package:][type:]name”)的引用.

所以,从技术上讲,它不可能是你想要做的。

于 2012-05-24T17:04:10.977 回答