2014-10-08 62 views
1

我試圖添加一個黑色的視圖與0.5列表視圖中的項目時按下不透明度。更改列表視圖中項目按不透明項目按下

我已經嘗試了幾個使用選擇器來更改背景的東西,但它不起作用,因爲列表上的每個項目都是填充整個項目的圖像,並且圖像位於背景之上。

我也試過:

mWebcamsListView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 
      Log.i(TAG, "ITEM selected."); 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> adapterView) { 

      Log.i(TAG, "Nothing selected."); 
     } 
    }); 

要更改視圖的不透明性,但onItemSelected不被觸發,當我按項目,有沒有辦法讓用戶按下到視圖改變它的不透明度?

列表視圖:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".Webcams" 
android:background="@android:color/black"> 

<ListView 
    android:id="@+id/webcamsList" 
    android:layout_width="match_parent" 
    android:listSelector="@drawable/background_item_webcam" 
    android:layout_height="wrap_content" /> 

<ProgressBar 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/spinner" 
    android:layout_centerVertical="true" 
    android:layout_centerHorizontal="true" 
    android:visibility="visible" /> 

背景我試着只是改變顏色爲紅色:

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
<solid 
    android:color="@android:color/holo_red_dark" 
    /> 
</shape> 

的選擇:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_selected="true"  android:drawable="@drawable/background_index_webcam"/> 
</selector> 

編輯:我添加選擇器代碼I認爲它不起作用,因爲圖像在背景上我認爲我需要在圖像上添加圖層而不是更改背景,或者以編程方式獲取視圖並將其更改爲alpha。

EDIT2:我找到了解決辦法,因爲我認爲顏色變化的背景下所有我需要做的就是設置機器人:drawSelectorOnTop =「true」以對項目的看法

+0

我想你應該更改標題。懸停意味着將光標放在物品上,並且問題考慮按下它。 – 2014-10-08 09:07:57

+0

你試過列表選擇器http://stackoverflow.com/questions/2562051/listview-item-background-via-custom-selector – Pr38y 2014-10-08 09:15:34

+0

繪製你可以使用透明圖像 – Pr38y 2014-10-08 09:17:45

回答

1

我的上面畫的選擇認爲你將不得不實施Listview'ssetOnItemClickListener聽者不setOnItemSelectedListener如下:

mWebcamsListView.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
      Log.i(TAG, "ITEM selected."); 

     } 
    }); 
+0

這是我嘗試的第一件事,但onitemclick觸發當用戶停止按下該項目時 – dan87 2014-10-08 09:13:41

+0

顯示已經應用的選擇器代碼。 – GrIsHu 2014-10-08 09:14:18

+0

你是什麼意思? – dan87 2014-10-08 09:53:01

1

有2路對於這個問題第一次使用PNG透明的點擊選擇,另一個辦法是使用一套阿爾法梯度矩形文件

1

嘗試這種在onItemSelected

view.setBackgroundColor(Color.parseColor("#80000000")); 
+0

當我按下該項目時,Onitemselected不會被觸發...我不知道爲什麼... – dan87 2014-10-08 09:37:21

相關問題