av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

android - 安卓如何讓View往屏幕外隱藏?

瀏覽:115日期:2024-08-19 14:16:40

問題描述

如圖,讓和讓最新那條插入的數據 顯示在 頂部開始的地方,而舊的數據隱藏在頂部屏幕之外呢?

當插入 問題14的時候,,前13條被隱藏在頂部之外的地方了。怎么做到這樣呢?模仿語言助手那種界面?如何做到

android - 安卓如何讓View往屏幕外隱藏?

android - 安卓如何讓View往屏幕外隱藏?

問題解答

回答1:

以下兩種方案都親測可行:方案一:(無動畫)

listView.setSelection(問題14的position);

方案二:(帶動畫)

ListView lvBaseList添加問題14后調用

final int targetPosition = 2;//假設你要置頂的ItemView的position = 2final long targetId = adapter.getItemId(targetPosition);View child = getTargetView(lvBaseList, targetId);final boolean isVisible = child != null;if (isVisible) {//問題14已顯示 Log.d(TAG, 'lvBaseList.onItemClick isVisible = true >> '); Log.d(TAG, 'lvBaseList.onItemClick lvBaseList.getY() = ' + (int) lvBaseList.getY()); Log.d(TAG, 'lvBaseList.onItemClick child.getY() = ' + (int) child.getY()); lvBaseList.smoothScrollBy((int) (child.getY() - lvBaseList.getY()), 200); return;}//問題14未顯示Log.d(TAG, 'lvBaseList.onItemClick isVisible = false >> ');lvBaseList.smoothScrollToPosition(targetPosition + lvBaseList.getHeaderViewsCount());lvBaseList.setOnScrollListener(new OnScrollListener() {@Override public void onScrollStateChanged(AbsListView view, int scrollState) {if (scrollState == SCROLL_STATE_IDLE) { lvBaseList.setOnScrollListener(null);//避免影響正常滾動 View child = getTargetView(lvBaseList, targetId); if (child == null) {Log.e(TAG, 'lvBaseList.onItemClick child == null >> return;');return; } Log.d(TAG, 'lvBaseList.onItemClick lvBaseList.getY() = ' + (int) lvBaseList.getY()); Log.d(TAG, 'lvBaseList.onItemClick child.getY() = ' + (int) child.getY());// lvBaseList.scrollListBy((int) (child.getY() - lvBaseList.getY()));//可行,無動畫 lvBaseList.smoothScrollBy((int) (child.getY() - lvBaseList.getY()), 200);} }@Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { }});

需要用到的函數:

//根據targetId獲取childView private View getTargetView(ListView lvBaseList, long targetId) {View child = null;MomentView itemView;//MomentView相當于ViewHolder,里面存放item數據或者itemIdMomentItem item;for (int i = 0; i < lvBaseList.getChildCount(); i++) { child = lvBaseList.getChildAt(i); itemView = child == null ? null : (MomentView) child.getTag(); item = itemView == null ? null : itemView.getData(); Log.d(TAG, 'lvBaseList.onItemClick item.getId() = ' + (item == null ? 0 : item.getId()) + '; targetId = ' + targetId); if (item != null && item.getId() == targetId) {Log.d(TAG, 'lvBaseList.onItemClick item != null && item.getId() == targetId >> break;');break; } child = null;}return child; }

相關文章:
主站蜘蛛池模板: 亚洲精品久久久蜜桃 | 国产激情三区 | 国产欧美一区二区三区在线看 | 欧美视频精品 | 黄色免费网| 欧美日韩国产一区二区三区 | 国产大片一区 | 日韩欧美大片 | 精品一区二区三区在线视频 | 日本视频一区二区三区 | 国产精品视频一 | 天天色天天色 | 激情综合五月 | 国产真实乱对白精彩久久小说 | 秋霞电影院午夜伦 | 91九色视频在线 | 在线观看免费av网 | www.亚洲.com| 国产精品永久免费观看 | 久久黄视频 | 免费国产视频 | 国产一级免费视频 | 在线欧美亚洲 | 91精品中文字幕一区二区三区 | 日韩免费看片 | av中文字幕网站 | 成人h免费观看视频 | 色网在线看 | 福利在线观看 | 九九导航 | 欧洲精品一区 | 久久最新网址 | www.久久精品视频 | 日韩午夜网站 | 在线视频 中文字幕 | 欧美日韩在线观看一区 | 欧美日韩精品一区二区 | 精品国产乱码久久久久久闺蜜 | 成人一区精品 | 日韩a| 日本手机看片 |