android中如何去掉pulltorefreshlistview點選item時的背景顏色,與item外邊距設定
阿新 • • 發佈:2019-02-03
如圖所示,做專案中通過運用pulltorefreshlistview下拉重新整理元件實現item與邊有一定距離的效果圖,如下圖所示,item內容我已清除。
通過
com.handmark.pulltorefresh.library.PullToRefreshListView中custom:ptrRefreshableViewBackground=“”屬性可以設定ListView的背景圖,我用的是.9圖片,圖片與外邊距可通過padding或margin設定,但item與圖片邊的距離如何設定就是一個問題。
PS:大多數人往往會想到在item中設定外邊距,也就是marginRight和marginLeft,但事實上是不可以的,這個做法在ListView顯示中沒有效果
解決辦法,item外巢狀一層
<RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
android:paddingRight="12dp" android:paddingLeft="12dp"
></RelativeLayout>
然後再將item放到listView中即可解決問題,但問題又來了,點選Item時外邊會顯示整個item背景顏色,
解決辦法:
1.如果用ListView做的可以設定android:listSelector= ""
2.用第三方比如比如PullToRefreshListView 有可能沒有這個屬性android:listSelector=""
1>新建一個xml檔案
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/color_item_background" android:state_selected="true"></item> <item android:drawable="@color/color_item_background" android:state_selected="false"></item> </selector>
2>
if (viewHolder == null) {
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
convertView.setBackgroundResource(R.drawable.bg_item_selector);
於是點選背景顏色就解決了,第二種方法適合所有