本文整理了Java中android.widget.ListView.getChildAt()
方法的一些代码示例,展示了ListView.getChildAt()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ListView.getChildAt()
方法的具体详情如下:
包路径:android.widget.ListView
类名称:ListView
方法名:getChildAt
暂无
代码示例来源:origin: stackoverflow.com
private static int save = -1;
public void onListItemClick(ListView parent, View v, int position, long id) {
parent.getChildAt(position).setBackgroundColor(Color.BLUE);
if (save != -1 && save != position){
parent.getChildAt(save).setBackgroundColor(Color.BLACK);
}
save = position;
}
代码示例来源:origin: Naoki2015/CircleDemo
@Override
public View getChildAt(int position) {
return mListView.getChildAt(position);
}
代码示例来源:origin: stackoverflow.com
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
if (firstTimeStartup) {// first time highlight first row
currentSelectedView = l.getChildAt(0);
}
firstTimeStartup = false;
if (currentSelectedView != null && currentSelectedView != v) {
unhighlightCurrentRow(currentSelectedView);
}
currentSelectedView = v;
highlightCurrentRow(currentSelectedView);
//other codes
}
代码示例来源:origin: stackoverflow.com
public View getViewByPosition(int pos, ListView listView) {
final int firstListItemPosition = listView.getFirstVisiblePosition();
final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;
if (pos < firstListItemPosition || pos > lastListItemPosition ) {
return listView.getAdapter().getView(pos, null, listView);
} else {
final int childIndex = pos - firstListItemPosition;
return listView.getChildAt(childIndex);
}
}
代码示例来源:origin: joyoyao/superCleanMaster
public static int getScrollY(ListView lv) {
View c = lv.getChildAt(0);
if (c == null) {
return 0;
}
int firstVisiblePosition = lv.getFirstVisiblePosition();
int top = c.getTop();
int scrollY = -top + firstVisiblePosition * c.getHeight();
return scrollY;
}
代码示例来源:origin: joyoyao/superCleanMaster
private int calculateScrollYList() {
View c = mListView.getChildAt(0);
if (c == null) {
return 0;
}
//TODO support more than 1 header?
int firstVisiblePosition = mListView.getFirstVisiblePosition();
int top = c.getTop();
int headerHeight = 0;
if (firstVisiblePosition >= 1) { //TODO >= number of header
headerHeight = mHeightHeader;
}
return -top + firstVisiblePosition * c.getHeight() + headerHeight;
}
代码示例来源:origin: GitLqr/LQRWeChat
/**
* 判断mContentView是否处于顶部
*
* @return
*/
private boolean checkIsTop() {
int childCount = mContentView.getChildCount();
if (childCount > 0) {
View firstChild = mContentView.getChildAt(0);
if (firstChild.getTop() >= 0
&& firstItem == 0 && currentTop == 0) {
return true;
} else return false;
} else {
return false;
}
}
代码示例来源:origin: daimajia/AndroidSwipeLayout
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
((SwipeLayout)(mListView.getChildAt(position - mListView.getFirstVisiblePosition()))).open(true);
}
});
代码示例来源:origin: GitLqr/LQRWeChat
/**
* 判断是否需要拦截触摸事件
*
* @return
*/
private boolean shouldIntercept() {
if (bDraging) return true;
int childCount = mContentView.getChildCount();
if (childCount > 0) {
View firstChild = mContentView.getChildAt(0);
if (firstChild.getTop() >= 0
&& firstItem == 0 && currentTop == 0
&& bScrollDown) {
return true;
} else return false;
} else {
return true;
}
}
代码示例来源:origin: stackoverflow.com
public View getViewByPosition(int position, ListView listView) {
final int firstListItemPosition = listView.getFirstVisiblePosition();
final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;
if (position < firstListItemPosition || position > lastListItemPosition ) {
return listView.getAdapter().getView(position, null, listView);
} else {
final int childIndex = position - firstListItemPosition;
return listView.getChildAt(childIndex);
}
}
代码示例来源:origin: stackoverflow.com
ListView list = getListView();
int start = list.getFirstVisiblePosition();
for(int i=start, j=list.getLastVisiblePosition();i<=j;i++)
if(target==list.getItemAtPosition(i)){
View view = list.getChildAt(i-start);
list.getAdapter().getView(i, view, list);
break;
}
代码示例来源:origin: stackoverflow.com
ListView list = getListView();
int start = list.getFirstVisiblePosition();
for(int i=start, j=list.getLastVisiblePosition();i<=j;i++)
if(target==list.getItemAtPosition(i)){
View view = list.getChildAt(i-start);
list.getAdapter().getView(i, view, list);
break;
}
代码示例来源:origin: alexvasilkov/GestureViews
@Override
public View getViewAt(int position) {
View itemView = list.getChildAt(position - list.getFirstVisiblePosition());
return itemView == null ? null : ListAdapter.getImageView(itemView);
}
};
代码示例来源:origin: cSploit/android
@Override
public void run() {
if (lv == null)
return;
synchronized (this) {
int start = lv.getFirstVisiblePosition();
int end = Math.min(lv.getLastVisiblePosition(), list.size());
for (int i = start; i <= end; i++)
if (target == list.get(i)) {
View view = lv.getChildAt(i - start);
getView(i, view, lv);
break;
}
}
}
});
代码示例来源:origin: stackoverflow.com
public static int dpToPx(int dp, Context ctx) {
Resources r = ctx.getResources();
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, r.getDisplayMetrics());
}
//originally: http://stackoverflow.com/questions/5418510/disable-the-touch-events-for-all-the-views
//modified for the needs here
public static void enableDisableViewGroup(ViewGroup viewGroup, boolean enabled) {
int childCount = viewGroup.getChildCount();
for (int i = 0; i < childCount; i++) {
View view = viewGroup.getChildAt(i);
if(view.isFocusable())
view.setEnabled(enabled);
if (view instanceof ViewGroup) {
enableDisableViewGroup((ViewGroup) view, enabled);
} else if (view instanceof ListView) {
if(view.isFocusable())
view.setEnabled(enabled);
ListView listView = (ListView) view;
int listChildCount = listView.getChildCount();
for (int j = 0; j < listChildCount; j++) {
if(view.isFocusable())
listView.getChildAt(j).setEnabled(false);
}
}
}
}
代码示例来源:origin: wangdan/AisenWeiBo
public void show() {
int top = 0;
if (getRefreshView().getChildCount() > 0 && getRefreshView().getChildAt(0).getHeight() > 0) {
top = getRefreshView().getChildAt(0).getHeight() * 3;
}
else {
top = Utils.dip2px(getActivity(), 175);
}
getRefreshView().setSelectionFromTop(selectedPosition, top);
}
代码示例来源:origin: stackoverflow.com
ListView listView;
Runnable fitsOnScreen = new Runnable() {
@Override
public void run() {
int last = listView.getLastVisiblePosition();
if(last == listView.getCount() - 1 && listView.getChildAt(last).getBottom() <= listView.getHeight()) {
// It fits!
}
else {
// It doesn't fit...
}
}
};
代码示例来源:origin: robolectric/robolectric
@Test
public void setAdapter_shouldNotClearHeaderOrFooterViews() throws Exception {
View header = new View(context);
listView.addHeaderView(header);
View footer = new View(context);
listView.addFooterView(footer);
prepareListWithThreeItems();
assertThat(listView.getChildCount()).isEqualTo(5);
assertThat(listView.getChildAt(0)).isSameAs(header);
assertThat(listView.getChildAt(4)).isSameAs(footer);
}
代码示例来源:origin: robolectric/robolectric
@Test
public void getPositionForView_shouldReturnThePositionInTheListForTheView() throws Exception {
prepareWithListAdapter();
View childViewOfListItem = ((ViewGroup) listView.getChildAt(1)).getChildAt(0);
assertThat(listView.getPositionForView(childViewOfListItem)).isEqualTo(1);
}
代码示例来源:origin: robolectric/robolectric
@Test
public void findItemContainingText_shouldFindChildByString() throws Exception {
ShadowListView shadowListView = prepareListWithThreeItems();
View item1 = shadowListView.findItemContainingText("Item 1");
assertThat(item1).isSameAs(listView.getChildAt(1));
}
内容来源于网络,如有侵权,请联系作者删除!