今天做页面的时候遇到一个小问题,在点击的时候改变组件的图片来源,这个很简单大家都知道,用selector可以很快实现。但是现状有点特殊,是 LinearLayout 中包裹着一个 ImageView
需要当点击LinearLayout 的时候ImageView图片来源的改变,试了好久还是不行,其中还牵扯到了组件的冒泡,结果在activity中实现的,后来想想不是很好,随手翻阅了一下api发现view有一个duplicateParentState 属性,看表面意思是和父组件保持同样的状态,结果抱着试试看的心态,果然可以实现当点击LinearLayout 的时候促发内部组件的selector,看来还是基础不牢固啊!
<LinearLayout
android:id="@+id/id_linearLayout_adjust_operate"
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_marginTop="26dp"
android:background="@drawable/list_main_bg_selector"
android:gravity="center_vertical"
android:orientation="horizontal" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:clickable="true"
android:duplicateParentState="true"
android:focusable="true"
android:src="@drawable/icon_main_operation_selector" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="14dp"
android:text="@string/STR_MAIN_ADJUST_OPERATE"
android:textColor="#909bb8"
android:textSize="20sp" />
</LinearLayout>
这样就可以实现当点击付LinearLayout 促发 内部 ImageView 的selector
博客地址:http://qiaoyihang.iteye.com/
分享到:
相关推荐
在Android开发中,View是构建用户界面的基本元素,它的XML属性极大地丰富了界面的设计和交互。以下是关于Android中View的一些重要XML属性的详细说明: 1. **android:alpha**: 这个属性用于设置View的透明度,值在...
19. `android:duplicateParentState`:视图是否从父视图继承绘图状态(如按下、选中等)。 20. `android:soundEffectsEnabled`:点击或触摸时是否播放音效。 21. `android:hapticFeedbackEnabled`:是否开启触感反馈...
`android:duplicateParentState`是Android XML布局文件中一个特殊的属性,主要用于子View。当这个属性设置为`true`时,子View会复制父View的状态,这意味着子View的行为将与父View保持一致,包括对触摸事件的响应和...
通过设置该属性,可以轻松地调整视图或组件的透明度,这对于创建视觉效果如淡入淡出动画非常有用。 #### 二、android:background **相关方法:** `setBackgroundResource(int)` **描述:** 此属性用于设置视图背景...
首先,`android:background`属性用于设置视图(View)的背景颜色或图像。透明背景可以使用`@android:color/transparent`或`@null`来实现。例如,`TextView`默认是透明的,但如果你想让`Button`、`ImageButton`或`...
本文档将详细介绍Android2.2版本中的`View`类及其相关属性,帮助开发者更好地理解和使用这些重要的UI组件。 #### 已知直接子类 `View`类有许多直接子类,包括但不限于: - **AnalogClock**:模拟时钟视图。 - **...
### 关于Android的XML属性详细说明 #### 概述 在Android开发中,XML文件用于定义用户界面的布局和外观。这些文件包含了丰富的属性,允许开发者定制化UI元素的各个方面。本文将详细介绍部分核心XML属性的功能及其...
android:duplicateParentState="true" android:scrollbars="none" /> ``` 接下来,我们需要创建头部View的布局文件(headerview.xml),这里通常包含一个ImageView或其他视图元素,以展示拉伸效果。例如: ```...
2. 在`styles.xml`文件中定义自定义样式`item_content_text_style`,包含文字大小、是否继承父组件状态以及文字颜色选择器: ```xml <item name="android:textSize">26sp <item name="android:...