Java Code Examples for android.widget.ListView#getChildAt()
The following examples show how to use
android.widget.ListView#getChildAt() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ListPosition.java From Dashchan with Apache License 2.0 | 6 votes |
public static ListPosition obtain(ListView listView) { int position = listView.getFirstVisiblePosition(); int y = 0; Rect rect = new Rect(); int paddingTop = listView.getPaddingTop(), paddingLeft = listView.getPaddingLeft(); for (int i = 0, count = listView.getChildCount(); i < count; i++) { View view = listView.getChildAt(i); view.getHitRect(rect); if (rect.contains(paddingLeft, paddingTop)) { position += i; y = rect.top - paddingTop; break; } } return new ListPosition(position, y); }
Example 2
Source File: PullToRefreshAdapterViewBase.java From MagicHeaderViewPager with Apache License 2.0 | 6 votes |
/** * @return */ private boolean isHeaderViewAtTop() { if(mRefreshableView instanceof ListView){ if(mRefreshableView.getFirstVisiblePosition() > 1) { return false; } ListView listView = (ListView)mRefreshableView; if(listView != null && listView.getChildCount() > 0){ View view = listView.getChildAt(0); if(view != null){ return view.getTop() == 0; } } } return true; }
Example 3
Source File: ListViewAutoScrollHelper.java From guideshow with MIT License | 6 votes |
@Override public void scrollTargetBy(int deltaX, int deltaY) { final ListView target = mTarget; final int firstPosition = target.getFirstVisiblePosition(); if (firstPosition == ListView.INVALID_POSITION) { return; } final View firstView = target.getChildAt(0); if (firstView == null) { return; } final int newTop = firstView.getTop() - deltaY; target.setSelectionFromTop(firstPosition, newTop); }
Example 4
Source File: PreventFragment.java From prevent with Do What The F*ck You Want To Public License | 6 votes |
public void updateTimeIfNeeded(String packageName) { if (scrolling || mAdapter == null) { return; } ListView l = getListView(); int size = mAdapter.getCount(); for (int i = 0; i < size; ++i) { View view = l.getChildAt(i); if (view == null || view.getTag() == null || view.getVisibility() != View.VISIBLE) { continue; } ViewHolder holder = (ViewHolder) view.getTag(); if (PackageUtils.equals(packageName, holder.packageName)) { holder.updatePreventView(mActivity); holder.running = mActivity.getRunningProcesses().get(packageName); holder.summaryView.setText(StatusUtils.formatRunning(mActivity, holder.running)); } else if (holder.running != null) { holder.summaryView.setText(StatusUtils.formatRunning(mActivity, holder.running)); } } }
Example 5
Source File: ListViewAutoScrollHelper.java From adt-leanback-support with Apache License 2.0 | 6 votes |
@Override public void scrollTargetBy(int deltaX, int deltaY) { final ListView target = mTarget; final int firstPosition = target.getFirstVisiblePosition(); if (firstPosition == ListView.INVALID_POSITION) { return; } final View firstView = target.getChildAt(0); if (firstView == null) { return; } final int newTop = firstView.getTop() - deltaY; target.setSelectionFromTop(firstPosition, newTop); }
Example 6
Source File: AuthenticatorActivityTest.java From google-authenticator-android with Apache License 2.0 | 5 votes |
@Test public void testGetOtpWithOneHotpAccountUsingGetNextCodeButtonClick() { accountDb.add(HOTP_ACCOUNT_NAME, "7777777777777777", OtpType.HOTP, null, null, null); activityTestRule.launchActivity(null); ListView userList = activityTestRule.getActivity().findViewById(R.id.user_list); assertThat(userList.getChildCount()).isEqualTo(1); View listEntry = userList.getChildAt(0); String user = ((TextView) listEntry.findViewById(R.id.current_user)).getText().toString(); String pin = getOriginalPincode( ((TextView) listEntry.findViewById(R.id.pin_value)).getText().toString()); assertThat(user).isEqualTo(HOTP_ACCOUNT_NAME); // starts empty assertThat(pin).isEqualTo(activityTestRule.getActivity().getString(R.string.empty_pin)); assertThat(listEntry.findViewById(R.id.countdown_icon).isShown()).isFalse(); // Get next OTP value by clicking the "Get next code" button of this list item. View buttonView = listEntry.findViewById(R.id.next_otp); assertThat(buttonView.isShown()).isTrue(); TestUtilities.clickView(InstrumentationRegistry.getInstrumentation(), buttonView); pin = getOriginalPincode( ((TextView) listEntry.findViewById(R.id.pin_value)).getText().toString()); assertThat(pin).isEqualTo(FIRST_HOTP_EXPECTED_PIN); assertThat(accountDb.getCounter(new AccountIndex(HOTP_ACCOUNT_NAME, null))) .isEqualTo(Integer.valueOf(1)); // Check the styled pin code String styledPin = ((TextView) listEntry.findViewById(R.id.pin_value)).getText().toString(); assertThat(Utilities.getStyledPincode(FIRST_HOTP_EXPECTED_PIN)).isEqualTo(styledPin); }
Example 7
Source File: ListViewUtils.java From Conversations with GNU General Public License v3.0 | 5 votes |
public static void setSelection(final ListView listView, int pos, boolean jumpToBottom) { if (jumpToBottom) { final View lastChild = listView.getChildAt(listView.getChildCount() - 1); if (lastChild != null) { listView.setSelectionFromTop(pos, -lastChild.getHeight()); return; } } listView.setSelection(pos); }
Example 8
Source File: ListViewUtil.java From NIM_Android_UIKit with MIT License | 5 votes |
public static Object getViewHolderByIndex(ListView listView, int index) { int firstVisibleFeedPosition = listView.getFirstVisiblePosition() - listView.getHeaderViewsCount(); int lastVisibleFeedPosition = listView.getLastVisiblePosition() - listView.getHeaderViewsCount(); //只有获取可见区域的 if (index >= firstVisibleFeedPosition && index <= lastVisibleFeedPosition) { View view = listView.getChildAt(index - firstVisibleFeedPosition); Object tag = view.getTag(); return tag; } else { return null; } }
Example 9
Source File: SearchResultsActivity.java From iqra-android with MIT License | 5 votes |
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); } }
Example 10
Source File: MainListAdapter.java From Passbook with Apache License 2.0 | 5 votes |
void markAll(ListView listView) { int firstVisible = listView.getFirstVisiblePosition(); int lastVisible = listView.getLastVisiblePosition(); int pos; for(pos = 0; pos < firstVisible; ++pos) { mChecked.set(pos, true); } for(pos = lastVisible + 1; pos < mChecked.size(); ++pos) { mChecked.set(pos, true); } mCheckCount += (mChecked.size() - lastVisible - 1); for(pos = firstVisible; pos <= lastVisible; ++pos) { View v = listView.getChildAt(pos); if(v!=null) { ViewHolder holder = (ViewHolder) v.getTag(); Animation anim1 = AnimationUtils.loadAnimation(mContext, R.anim.shrink_to_middle); Animation anim2 = AnimationUtils.loadAnimation(mContext, R.anim.expand_from_middle); holder.mIconView.clearAnimation(); holder.mIconView.setAnimation(anim1); holder.mIconView.startAnimation(anim1); AnimationListener listener = getAnimListener(v, holder.mIconView, pos, anim1, anim2); anim1.setAnimationListener(listener); anim2.setAnimationListener(listener); } } }
Example 11
Source File: ViewHelper.java From Common with Apache License 2.0 | 5 votes |
/** * 判断 ListView 是否已经滚动到底部 * * @param listView 需要被判断的 ListView * @return */ public static boolean isListViewAlreadyAtBottom(ListView listView) { if (listView.getAdapter() == null || listView.getHeight() == 0) { return false; } if (listView.getLastVisiblePosition() == listView.getAdapter().getCount() - 1) { View lastItemView = listView.getChildAt(listView.getChildCount() - 1); if (lastItemView != null && lastItemView.getBottom() == listView.getHeight()) { return true; } } return false; }
Example 12
Source File: ViewHelper.java From DMusic with Apache License 2.0 | 5 votes |
/** * 判断 ListView 是否已经滚动到底部 * * @param listView 需要被判断的 ListView * @return */ public static boolean isListViewAlreadyAtBottom(ListView listView) { if (listView.getAdapter() == null || listView.getHeight() == 0) { return false; } if (listView.getLastVisiblePosition() == listView.getAdapter().getCount() - 1) { View lastItemView = listView.getChildAt(listView.getChildCount() - 1); if (lastItemView != null && lastItemView.getBottom() == listView.getHeight()) { return true; } } return false; }
Example 13
Source File: MentionsListAdapter.java From YiBo with Apache License 2.0 | 5 votes |
public boolean refresh() { if (listNewBlogs == null || listNewBlogs.size() == 0) { return false; } addCacheToFirst(listNewBlogs); int offset = listNewBlogs.size(); listNewBlogs.clear(); newCount = 0; ListView lvMicroBlog = (ListView)((Activity)context).findViewById(R.id.lvMicroBlog); if (lvMicroBlog == null) { return true; } Adapter adapter = lvMicroBlog.getAdapter(); if (adapter instanceof HeaderViewListAdapter) { adapter = ((HeaderViewListAdapter)adapter).getWrappedAdapter(); } if (lvMicroBlog != null && adapter == this ) { int position = lvMicroBlog.getFirstVisiblePosition(); View view = lvMicroBlog.getChildAt(0); int y = 0; if (view != null && position >= 1) { y = view.getTop(); position += offset; lvMicroBlog.setSelectionFromTop(position, y); } } return true; }
Example 14
Source File: ListViewUtils.java From Pix-Art-Messenger with GNU General Public License v3.0 | 5 votes |
public static void setSelection(final ListView listView, int pos, boolean jumpToBottom) { if (jumpToBottom) { final View lastChild = listView.getChildAt(listView.getChildCount() - 1); if (lastChild != null) { listView.setSelectionFromTop(pos, -lastChild.getHeight()); return; } } listView.setSelection(pos); }
Example 15
Source File: DrawerSubMenuBase.java From edslite with GNU General Public License v2.0 | 5 votes |
public View findView(ListView list) { for(int i = 0, n = list.getChildCount();i < n;i++) { View v = list.getChildAt(i); if (v.getTag() == this) return v; } /*int start = list.getFirstVisiblePosition(); for (int i = start, j = list.getLastVisiblePosition(); i <= j; i++) if (this == list.getItemAtPosition(i)) return list.getChildAt(i - start);*/ return null; }
Example 16
Source File: ListViewAutoScrollHelper.java From adt-leanback-support with Apache License 2.0 | 5 votes |
@Override public boolean canTargetScrollVertically(int direction) { final ListView target = mTarget; final int itemCount = target.getCount(); if (itemCount == 0) { return false; } final int childCount = target.getChildCount(); final int firstPosition = target.getFirstVisiblePosition(); final int lastPosition = firstPosition + childCount; if (direction > 0) { // Are we already showing the entire last item? if (lastPosition >= itemCount) { final View lastView = target.getChildAt(childCount - 1); if (lastView.getBottom() <= target.getHeight()) { return false; } } } else if (direction < 0) { // Are we already showing the entire first item? if (firstPosition <= 0) { final View firstView = target.getChildAt(0); if (firstView.getTop() >= 0) { return false; } } } else { // The behavior for direction 0 is undefined and we can return // whatever we want. return false; } return true; }
Example 17
Source File: AuthenticatorActivityTest.java From google-authenticator-android with Apache License 2.0 | 5 votes |
@Test public void testGetOtpWithOneHotpAccountUsingListRowClick() { accountDb.add(HOTP_ACCOUNT_NAME, "7777777777777777", OtpType.HOTP, null, null, null); activityTestRule.launchActivity(null); ListView userList = activityTestRule.getActivity().findViewById(R.id.user_list); assertThat(userList.getChildCount()).isEqualTo(1); View listEntry = userList.getChildAt(0); String user = ((TextView) listEntry.findViewById(R.id.current_user)).getText().toString(); String pin = getOriginalPincode( ((TextView) listEntry.findViewById(R.id.pin_value)).getText().toString()); assertThat(user).isEqualTo(HOTP_ACCOUNT_NAME); // starts empty assertThat(pin).isEqualTo(activityTestRule.getActivity().getString(R.string.empty_pin)); assertThat(listEntry.findViewById(R.id.countdown_icon).isShown()).isFalse(); // Get next OTP value by clicking the list item/row. assertThat(TestUtilities.clickListViewItem(userList, 0)).isTrue(); listEntry = userList.getChildAt(0); onView(is((View) listEntry.findViewById(R.id.pin_value))) .check( matches( withText( Utilities.getStyledPincode( FIRST_HOTP_EXPECTED_PIN)))); // Verify the expected pin is present assertThat(accountDb.getCounter(new AccountIndex(HOTP_ACCOUNT_NAME, null))) .isEqualTo(Integer.valueOf(1)); }
Example 18
Source File: HomeACTIVITY.java From ALLGO with Apache License 2.0 | 5 votes |
/** * drawer 的初始化方法 */ private void creatdrawer() { // TODO 生成抽屉方法开始 mTitle = mDrawerTitle = getTitle(); mHomeTitles = getResources().getStringArray(R.array.home_array); mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerList = (ListView) findViewById(R.id.left_drawer); // set a custom shadow that overlays the main content when the drawer opens mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START); // set up the drawer's list view with items and click listener mDrawerList.setAdapter(new ArrayAdapter<String>(this,R.layout.drawer_list_item,mHomeTitles)); mDrawerList.setOnItemClickListener(new DrawerItemClickListener()); // enable ActionBar app icon to behave as action to toggle nav drawer mActionBar.setDisplayHomeAsUpEnabled(true); mActionBar.setHomeButtonEnabled(true); // ActionBarDrawerToggle ties together the the proper interactions // between the sliding drawer and the action bar app icon mDrawerToggle = new ActionBarDrawerToggle( this, /* host Activity */ mDrawerLayout, /* DrawerLayout object */ R.drawable.ic_drawer, /* nav drawer image to replace 'Up' caret */ R.string.drawer_open, /* "open drawer" description for accessibility */ R.string.drawer_close /* "close drawer" description for accessibility */ ) { public void onDrawerClosed(View view) { mActionBar.setTitle(mTitle); invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu() 此时关闭抽屉 } public void onDrawerOpened(View drawerView) { mActionBar.setTitle(mDrawerTitle); invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu() 此时打开抽屉 View v=mDrawerList.getChildAt(position); v.setBackgroundColor(Color.GRAY); } }; mDrawerLayout.setDrawerListener(mDrawerToggle); }
Example 19
Source File: Utility.java From iBeebo with GNU General Public License v3.0 | 4 votes |
public static View getListViewItemViewFromPosition(ListView listView, int position) { return listView.getChildAt(position - listView.getFirstVisiblePosition()); }
Example 20
Source File: AuthenticatorActivityTest.java From google-authenticator-android with Apache License 2.0 | 4 votes |
@Test @FixWhenMinSdkVersion(11) @SuppressWarnings("deprecation") public void testContextMenuCopyToClipboard() { // use HOTP to avoid any timing issues when "current" pin is compared with clip board text. accountDb.add(HOTP_ACCOUNT_NAME, "7777777777777777", OtpType.HOTP, null, null, null); activityTestRule.launchActivity(null); ListView userList = activityTestRule.getActivity().findViewById(R.id.user_list); // find and click next otp button. View buttonView = activityTestRule.getActivity().findViewById(R.id.next_otp); TestUtilities.clickView(InstrumentationRegistry.getInstrumentation(), buttonView); // get the pin being displayed View listEntry0 = userList.getChildAt(0); String pin = getOriginalPincode( ((TextView) listEntry0.findViewById(R.id.pin_value)).getText().toString()); openListViewContextualActionBar(activityTestRule.getActivity(), userList, 0); InstrumentationRegistry.getInstrumentation().waitForIdleSync(); TestUtilities.runOnMainSyncWithTimeout( new Callable<Void>() { @Override public Void call() { // Check clipboard value. String clipboardContent = ""; Context context = InstrumentationRegistry.getInstrumentation().getTargetContext(); ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); if (clipboard.hasPrimaryClip() && clipboard.getPrimaryClipDescription() .hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) { clipboardContent = clipboard.getPrimaryClip().getItemAt(0).getText().toString(); } assertThat(clipboardContent).isEqualTo(pin); return null; } }); }