`

LinearLayout按下(pressed)或获取焦点(focused)时背景设置不同颜色或图片

阅读更多
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/myview"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="top"
    android:background="@drawable/myDrawable"
    android:clickable="true"



>
</LinearLayout>

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true" android:drawable="@color/black" /> <!-- focused -->
    <item android:state_focused="true" android:state_pressed="true" android:drawable="@color/black" /> <!-- focused and pressed-->
    <item android:state_pressed="true" android:drawable="@color/green" /> <!-- pressed -->
    <item android:drawable="@color/black" /> <!-- default -->
</selector>

 千万注意上面红色标注的地方,一定要加这个属性,不然不起作用,另外在color.xml中可以定义drawable和color等多种属性,害我老是报找不到@color匹配的项,原来一直都在写drawable,尼玛!!!!!

分享到:
评论
1 楼 niuniulife2011 2011-06-28  
<div class="quote_title">dengzh 写道</div>
<div class="quote_div">
<pre name="code" class="xml">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/myview"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="top"
    android:background="@drawable/myDrawable"
    <span style="color: #ff0000;"><span style="text-decoration: underline;">android:clickable="true"</span>

</span>

&gt;
&lt;/LinearLayout&gt;

&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;selector xmlns:android="http://schemas.android.com/apk/res/android"&gt;
    &lt;item android:state_focused="true" android:drawable="@color/black" /&gt; &lt;!-- focused --&gt;
    &lt;item android:state_focused="true" android:state_pressed="true" android:drawable="@color/black" /&gt; &lt;!-- focused and pressed--&gt;
    &lt;item android:state_pressed="true" android:drawable="@color/green" /&gt; &lt;!-- pressed --&gt;
    &lt;item android:drawable="@color/black" /&gt; &lt;!-- default --&gt;
&lt;/selector&gt;</pre>
<p> 千万注意上面红色标注的地方,一定要加这个属性,不然不起作用,另外在color.xml中可以定义drawable和color等多种属性,害我老是报找不到@color匹配的项,原来一直都在写drawable,尼玛!!!!!</p>
</div>
<p> </p>

相关推荐

    Android背景图片

    2. **Selector Drawable**:Selector是状态列表,可以根据控件的状态(如按下、默认、选中等)显示不同的背景图片。这对于实现按钮或其他交互元素的视觉反馈非常有用。 ```xml ...

    Android使用selector修改TextView中字体颜色和背景色的方法

    `drawable`属性用于设置颜色或图片资源。 2. `ttextcolor.xml` - 修改字体颜色的Selector ```xml &lt;!-- 当窗口无焦点时的文字颜色 --&gt; &lt;item android:state_window_focused="false" android:color="@color/...

    Android布局之LinearLayout自定义高亮背景的方法

    你可以根据实际需求替换为相应的图片或颜色。 接下来,在布局XML文件中,我们需要为LinearLayout设置这个自定义的选择器背景。例如: ```xml &lt;LinearLayout android:layout_height="wrap_content" android:...

    扩展LinearLayout以及从xml中加载menu,selector的使用

    在res/drawable目录下创建XML文件,如button_selector.xml,可以定义不同的状态(如按下、聚焦、默认等)及其对应的Drawable。在视图的背景属性中引用这个选择器,视图就会根据其当前状态显示相应的Drawable。例如,...

    Android selector

    这里,我们为三种状态设置了不同的背景图片:按下时(pressed)、获得焦点时(focused)以及默认状态(default)。`@drawable/button_pressed`、`@drawable/button_focused`和`@drawable/button_default`分别对应...

    线性布局代码

    4. 按下状态:Android提供了`android:state_pressed`和`android:state_focused`属性来定义Button被按下或获得焦点时的视觉反馈。 5. 监听器:通过添加OnClickListener或OnCheckedChangeListener,我们可以监听并处理...

    QQ设置布局界面实现(android)

    比如,当用户点击一个设置项时,可以改变其背景颜色或阴影,或者使用`Transition` API实现平滑的视图过渡。 最后,`QQSettingLayoutDemo`可能是一个包含上述所有元素的示例项目,包括`shape`资源、布局文件、适配器...

    根据状态自动变化TextView颜色

    这样,当用户点击或触摸父View时,TextView会自动获取到相应的焦点或按下状态,并根据预设的样式资源改变颜色。 在实际应用中,我们可以通过以下几种方式实现TextView颜色的自动变化: 1. **使用主题和样式**:在`...

    Android中UI设计的一些技巧

    在上述代码中,`handle_normal`、`handle_focused`、`handle_pressed`分别代表正常状态、焦点状态和按下状态下的按钮图片。在Button控件中使用这个资源文件时,只需要设置`android:background="@drawable/handle"`...

    Android开发技巧总汇(3)

    android:drawable="@drawable/非触摸模式下获得焦点并单击时的背景图片"/&gt; &lt;item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/触摸模式下单击时的背景图片"/&gt; ...

    Android 图片+文字复合控件,有选中效果

    选择器是一种状态列表 drawable,可以为不同的状态(如默认、按下、选中等)定义不同的外观。在res/drawable目录下创建一个xml文件,例如`selector_image_text.xml`,并定义不同状态下的背景。 ```xml ...

    android自定义view自定义buttonDemo

    当检测到ACTION_DOWN和ACTION_UP事件时,分别表示按下和抬起,可以在此时改变背景颜色。 2. 使用ColorStateList来定义按钮的多种状态颜色。ColorStateList是一种颜色资源,可以根据按钮的状态(如按下、默认、禁用等...

    android listview item背景色点击效果实例

    当用户与列表交互时,为了提供良好的用户体验,通常需要实现点击项时的视觉反馈,比如改变item的背景颜色。本实例“android listview item背景色点击效果”正是针对这一需求进行的开发。 在Android中,ListView的每...

    Android编程简单实现ImageView点击时背景图修改的方法

    这个选择器定义了更多状态,包括默认、无焦点、按下、选中和聚焦时的背景图片。你可以通过以下三种方式应用这个选择器: 1. 在ListView的XML布局中设置全局列表项背景: ```xml android:id="@+id/listView" ...

    图片文字状态选择器

    在Android开发中,状态选择器(Selector)是一种非常重要的组件,它主要用于定义控件在不同状态下的显示样式,比如按下、聚焦、默认等状态。在本案例中,我们讨论的是一个特殊的“图片文字状态选择器”,它允许同时...

    Android ListView 选中效果 自定义

    在这个例子中,`bg_pressed`、`bg_focused`和`bg_normal`是不同的背景图片,分别对应于按下、聚焦和默认状态。 接下来,我们需要在ListView的Item布局文件中引用这个状态选择器: ```xml &lt;!-- item_list.xml --&gt; ...

    android listView itemClick 高亮

    这个文件定义了不同状态下的背景样式,如默认、按下、选中等。例如: ```xml &lt;!-- 默认状态 --&gt; &lt;item android:drawable="@color/default_color" android:state_enabled="true" android:state_pressed="false" ...

    Android应用源码之SelecterDrawableSample-IT计算机-毕业设计.zip

    1. **Drawable Selectors**:了解如何创建和配置Drawable Selector XML文件,包括设置不同状态(例如`&lt;state_pressed&gt;`、`&lt;state_focused&gt;`、`&lt;state_enabled&gt;`)和对应的图像或颜色。 2. **State ListDrawable**:...

    android学习小知识

    这包括正常状态(normal)、按下状态(pressed)和聚焦状态(focused)。 - **设置Selector**:将`selector.xml`文件保存在项目的`res/drawable`目录下,并将其作为`ImageButton`的`android:src`属性的值。 **示例**: `...

    高仿微信底部渐变导航栏

    颜色选择器可以根据按钮的状态(如按下、启用、禁用等)返回不同的颜色。 ```xml &lt;item android:state_pressed="true" android:drawable="@drawable/gradient_selected" /&gt; &lt;item android:state_focused="true" ...

Global site tag (gtag.js) - Google Analytics