成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

AndroidListView滾動(dòng)條的設(shè)置詳解及實(shí)例代碼

Android ListView 滾動(dòng)條的設(shè)置詳解

創(chuàng)新互聯(lián)建站專(zhuān)注于靖江網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供靖江營(yíng)銷(xiāo)型網(wǎng)站建設(shè),靖江網(wǎng)站制作、靖江網(wǎng)頁(yè)設(shè)計(jì)、靖江網(wǎng)站官網(wǎng)定制、微信平臺(tái)小程序開(kāi)發(fā)服務(wù),打造靖江網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供靖江網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。

1.滾動(dòng)條的屬性

android:scrollbarAlwaysDrawHorizontalTrack

設(shè)置是否始終顯示水平滾動(dòng)條。這里用ScrollView、ListView測(cè)試均沒(méi)有效果。

android:scrollbarAlwaysDrawVerticalTrack

設(shè)置是否始終顯示垂直滾動(dòng)條。這里用ScrollView、ListView測(cè)試均沒(méi)有效果。

android:scrollbarDefaultDelayBeforeFade

設(shè)置N毫秒后開(kāi)始淡化,以毫秒為單位。

android:scrollbarFadeDuration

設(shè)置滾動(dòng)條淡出效果(從有到慢慢的變淡直至消失)時(shí)間,以毫秒為單位。Android2.2中滾動(dòng)條滾動(dòng)完之后會(huì)消失,再滾動(dòng)又會(huì)出來(lái),在1.5、1.6版本里面會(huì)一直顯示著。

android:scrollbarSize

設(shè)置滾動(dòng)條的寬度。

android:scrollbarStyle

設(shè)置滾動(dòng)條的風(fēng)格和位置。設(shè)置值:insideOverlay、insideInset、outsideOverlay、outsideInset。這里沒(méi)有試出太多效果,以下依次是outsideOverlay與outsideInset效果比較:

android:scrollbarThumbHorizontal

設(shè)置水平滾動(dòng)條的drawable(如顏色)。

android:scrollbarThumbVertical

設(shè)置垂直滾動(dòng)條的drawable(如顏色).

android:scrollbarTrackHorizontal

設(shè)置水平滾動(dòng)條背景(軌跡)的色drawable(如顏色)

android:scrollbarTrackVertical

設(shè)置垂直滾動(dòng)條背景(軌跡)的drawable注意直接設(shè)置顏色值如”android:color/white”將得出很難看的效果,甚至都不理解這個(gè)屬性了,這里可以參見(jiàn)ApiDemos里res/drawable/ scrollbar_vertical_thumb.xml和scrollbar_vertical_track.xml,設(shè)置代碼為:

android:scrollbarTrackVertical ="@drawable/scrollbar_vertical_track"

android:scrollbars

設(shè)置滾動(dòng)條顯示。none(隱藏),horizontal(水平),vertical(垂直)。見(jiàn)下列代碼演示使用該屬性讓EditText內(nèi)有滾動(dòng)條。但是其他容器如LinearLayout設(shè)置了但是沒(méi)有效果

android:fastScrollEnabled

設(shè)置是否以滑塊的形式顯示(但是有時(shí)候會(huì)發(fā)現(xiàn)設(shè)置屬性無(wú)效,滾動(dòng)ListView并未出現(xiàn)滑塊。原因是該屬性生效有最小記錄限制。當(dāng)ListView記錄能夠在4屏以?xún)?nèi)顯示(也就是說(shuō)滾動(dòng)4頁(yè))就不會(huì)出現(xiàn)滑塊。可能是api設(shè)計(jì)者認(rèn)為這么少的記錄不需要快速滾動(dòng)。)

2.問(wèn)題注意

注意:可能是適配的原因,可能你設(shè)置了scrollbarSize看不多效果,但是如果你配置scrollbarThumbVertical使用就可以看到

<style name="global_listview_style"> 
  <item name="android:background">@color/white</item> 
  <item name="android:cacheColorHint">#00000000</item> 
  <item name="android:divider">@color/white</item> 
  <item name="android:dividerHeight">10dip</item> 
  <item name="android:fadingEdge">none</item> 
  <item name="android:scrollbarSize">@dimen/DIMEN_4PX_DP</item> 
  <item name="android:scrollbarThumbVertical">@color/red_common</item>     
  <item name="android:fastScrollEnabled">true</item> 
  <item name="android:listSelector">#00000000</item> 
</style> 

3.如何修改滑塊的樣式

 依據(jù)是Android源代碼,見(jiàn)FastScroller的常量聲明:

// Minimum number of pages to justify showing a fast scroll thumb 
     private static int MIN_PAGES = 4; 
 
     以及: 
 
    // Are there enough pages to require fast scroll? Recompute only if total count changes 
    if (mItemCount != totalItemCount && visibleItemCount > 0) { 
       mItemCount = totalItemCount; 
       mLongList = mItemCount / visibleItemCount >= MIN_PAGES; 
    } 

通篇查看了ListView及其超累AbsListView,都未找到自定義圖片的設(shè)置接口??磥?lái)是沒(méi)打算讓開(kāi)發(fā)者更改了。但是用戶(hù)要求我們自定義這個(gè)圖片。那只能用非常手段了。

經(jīng)過(guò)分析發(fā)現(xiàn),該圖片是ListView超類(lèi)AbsListView的一個(gè)成員mFastScroller對(duì)象的成員mThumbDrawable。這里mThumbDrawable是Drawable類(lèi)型的。mFastScroller是FastScroller類(lèi)型,這個(gè)類(lèi)型比較麻煩,類(lèi)的聲明沒(méi)有modifier,也就是default(package),只能供包內(nèi)的類(lèi)調(diào)用。

因此反射代碼寫(xiě)的稍微麻煩一些:

try { 
  Field f = AbsListView.class.getDeclaredField("mFastScroller"); 
  f.setAccessible(true); 
  Object o=f.get(listView); 
  f=f.getType().getDeclaredField("mThumbDrawable"); 
  f.setAccessible(true); 
  Drawable drawable=(Drawable) f.get(o); 
  drawable=getResources().getDrawable(R.drawable.icon); 
  f.set(o,drawable); 
  Toast.makeText(this, f.getType().getName(), 1000).show(); 
} catch (Exception e) { 
   throw new RuntimeException(e); 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

本文題目:AndroidListView滾動(dòng)條的設(shè)置詳解及實(shí)例代碼
文章起源:http://jinyejixie.com/article14/igogde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、自適應(yīng)網(wǎng)站小程序開(kāi)發(fā)、網(wǎng)站收錄微信小程序、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
阿拉善右旗| 舒兰市| 丹阳市| 加查县| 凤阳县| 浦县| 股票| 清苑县| 司法| 万荣县| 宁都县| 万源市| 济南市| 龙口市| 临湘市| 克什克腾旗| 长治市| 华池县| 进贤县| 禹州市| 石柱| 郑州市| 长治市| 池州市| 洱源县| 西丰县| 绵竹市| 景宁| 商丘市| 准格尔旗| 正安县| 贵南县| 漾濞| 外汇| 洱源县| 怀安县| 栾城县| 本溪市| 油尖旺区| 湖北省| 阳谷县|