将鼠标悬停在其他应用的图标上

时间:2014-04-05 16:23:19

标签: android hover icons selector

我的应用程序中的设备/模拟器中安装了其他应用程序的图标。

由于我们通常使用选择器应用悬停效果,如何为其他应用图标执行相同的操作,因为我没有悬停图像?

TIA。

1 个答案:

答案 0 :(得分:0)

管理为每个图标添加默认悬停背景,如下所示。

  

图标持有人视图:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:focusable="true"
    android:gravity="center"
    android:orientation="vertical" 
    android:background="@drawable/custom_press">

    <ImageView
        android:id="@+id/imageview_app_item_icon"
        android:layout_width="@dimen/icon_size"
        android:layout_height="@dimen/icon_size"
        android:layout_margin="10dp"
        android:focusable="true" />

    <TextView
        android:id="@+id/textview_app_item_name"
        android:layout_width="@dimen/icon_size"
        android:layout_height="60dp"
        android:gravity="center|top"
        android:textColor="@android:color/black"
        android:textSize="17sp"
        android:textStyle="bold" />

</LinearLayout>
  

图标持有人视图的选择器:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_focused="true" android:state_pressed="false">
    <shape android:shape="rectangle">
        <corners android:radius="25dp" />
        <gradient android:startColor="@android:color/white" 
            android:centerColor="@android:color/white"
            android:endColor="@android:color/white"/>
    </shape></item>
<item android:state_focused="true" android:state_pressed="true">
    <shape android:shape="rectangle">
        <corners android:radius="25dp" />
        <gradient android:startColor="@android:color/white" 
            android:centerColor="@android:color/white"
            android:endColor="@android:color/white"/>
    </shape></item>
<item android:state_focused="false" android:state_pressed="true">
    <shape android:shape="rectangle">
        <corners android:radius="25dp" />
        <gradient android:startColor="@android:color/white" 
            android:centerColor="@android:color/white"
            android:endColor="@android:color/white"/>
    </shape></item>
<item >
   <shape android:shape="rectangle">
        <corners android:radius="25dp" />
        <gradient android:startColor="@android:color/transparent" 
            android:centerColor="@android:color/transparent"
            android:endColor="@android:color/transparent"/>
    </shape></item>