文章詳情頁
android - 如何用GridView實現展開和收起的功能
瀏覽:160日期:2024-09-03 10:21:04
問題描述
這是默認收起來的,點擊展開實現顯示全部內容:
這該如何實現?????
問題解答
回答1:這個解決方案有很多,我會選擇點擊展開將剩余的item全部加到adapter,在更新下就行了。收起的話就把那些需要收起的item從adapter中移除就行了。這里需要對最后那個item的點擊事件做額外的處理。
回答2:獲取這gridView的layoutParams,然后設置其高度,類似這樣子ViewGroup.LayoutParams layoutParams = gridView.getLayoutParams();layoutParams.height = 300;
一般這樣的效果都會做一個過渡動畫,原理是一樣的,只是將一次做的事情分多次做(將高度逐漸變大)
回答3:其實這種效果并不需要用GridView做,按你的描述來看并沒有滑動的需求,所以可以用GridLayout做,點擊之后remove最后一個 然后添加完后再 add收起就好了- -不復雜 邏輯也清楚。
回答4:我們公司實現這個需求用的是設置一個標記屬性,用于記錄展開收起狀態,重寫adapter的getItemCount()的返回值,根據這個標記屬性,當收起時返回8,展開是返回總數目
上一條:android - AsyncHttpClient上傳圖片和文字數據,直接失敗了,但是onFailure方法中的bytes輸不出東西,為何?下一條:android的ListView點擊事件問題?
相關文章:
1. objective-c - ios百度地圖定位問題2. html5 - 如何解決bootstrap打開模態modal窗口引起頁面抖動?3. javascript - 求助關于js正則問題4. javascript - node.js服務端渲染解疑5. javascript - 求助這種功能有什么好點的插件?6. html5 - rudy編譯sass的時候有中文報錯7. html - css 如何添加這種邊框?8. 為何 localStorage、sessionStorage 屬于html5的范疇,但是為何 IE8卻支持?9. 微信開放平臺 - Android調用微信分享不顯示10. javascript - 關于定時器 與 防止連續點擊 問題
排行榜
