android.widget.HeaderViewListAdapter#getWrappedAdapter ( )源码实例Demo

下面列出了android.widget.HeaderViewListAdapter#getWrappedAdapter ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: FoodOrdering   文件: PinnedHeaderListView.java
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int rawPosition, long id) {
    SectionedBaseAdapter adapter;
    if (adapterView.getAdapter().getClass().equals(HeaderViewListAdapter.class)) {
        HeaderViewListAdapter wrapperAdapter = (HeaderViewListAdapter) adapterView.getAdapter();
        adapter = (SectionedBaseAdapter) wrapperAdapter.getWrappedAdapter();
    } else {
        adapter = (SectionedBaseAdapter) adapterView.getAdapter();
    }
    int section = adapter.getSectionForPosition(rawPosition);
    int position = adapter.getPositionInSectionForPosition(rawPosition);

    if (position == -1) {
        onSectionClick(adapterView, view, section, id);
    } else {
        onItemClick(adapterView, view, section, position, id);
    }
}
 
源代码2 项目: Yahala-Messenger   文件: PinnedHeaderListView.java
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int rawPosition, long id) {
    SectionedBaseAdapter adapter;
    if (adapterView.getAdapter() instanceof HeaderViewListAdapter) {
        HeaderViewListAdapter wrapperAdapter = (HeaderViewListAdapter) adapterView.getAdapter();
        adapter = (SectionedBaseAdapter) wrapperAdapter.getWrappedAdapter();
    } else {
        adapter = (SectionedBaseAdapter) adapterView.getAdapter();
    }
    int section = adapter.getSectionForPosition(rawPosition);
    int position = adapter.getPositionInSectionForPosition(rawPosition);

    if (position == -1) {
        onSectionClick(adapterView, view, section, id);
    } else {
        onItemClick(adapterView, view, section, position, id);
    }
}
 
源代码3 项目: FanXin-based-HuanXin   文件: Sidebar.java
private void setHeaderTextAndscroll(MotionEvent event){
		 if (mListView == null) {
		        //check the mListView to avoid NPE. but the mListView shouldn't be null
		        //need to check the call stack later
		        return;
		    }
		String headerString = sections[sectionForPoint(event.getY())];
		header.setText(headerString);
		  HeaderViewListAdapter ha = (HeaderViewListAdapter) mListView.getAdapter();
		  ContactAdapter  adapter = (ContactAdapter) ha.getWrappedAdapter();
//		ContactAdapter adapter = (ContactAdapter) mListView.getAdapter();
		String[] adapterSections = (String[]) adapter.getSections();
		try {
			for (int i = adapterSections.length - 1; i > -1; i--) {
				if(adapterSections[i].equals(headerString)){
					mListView.setSelection(adapter.getPositionForSection(i));
					break;
				}
			}
		} catch (Exception e) {
			Log.e("setHeaderTextAndscroll", e.getMessage());
		}
		
	}
 
源代码4 项目: filemanager   文件: FolderFragment.java
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
		int visibleItemCount, int totalItemCount)
{		
	if (firstVisibleItem < this.topVisibleItem - DISTANCE_TO_HIDE_ACTIONBAR)
	{
		setActionbarVisibility(true);
		this.topVisibleItem = firstVisibleItem;
	}
	else if (firstVisibleItem > this.topVisibleItem + DISTANCE_TO_HIDE_ACTIONBAR)
	{
		setActionbarVisibility(false);
		this.topVisibleItem = firstVisibleItem;
	}
	
	ListAdapter adapter = view.getAdapter();
	if (adapter instanceof HeaderViewListAdapter)
	{
		HeaderViewListAdapter headerViewListAdapter = (HeaderViewListAdapter) adapter;
		if (headerViewListAdapter.getWrappedAdapter() instanceof FileCardAdapter)
		{
			int startPrefetch = firstVisibleItem + visibleItemCount-headerViewListAdapter.getHeadersCount();
			((FileCardAdapter) headerViewListAdapter.getWrappedAdapter()).prefetchImages(startPrefetch, visibleItemCount);
		}
	}
}
 
源代码5 项目: YiBo   文件: AdapterUtil.java
public static CacheAdapter<?> getCacheAdapter(Adapter adapter) {
	if (adapter == null) {
		return null;
	}
	CacheAdapter<?> cacheAdapter = null;
	if (adapter instanceof CacheAdapter<?>) {
        cacheAdapter = (CacheAdapter<?>)adapter;
	} else if (adapter instanceof HeaderViewListAdapter) {
		HeaderViewListAdapter headerViewAdapter = (HeaderViewListAdapter)adapter;
		if (headerViewAdapter.getWrappedAdapter() instanceof CacheAdapter<?>) {
			cacheAdapter = (CacheAdapter<?>)headerViewAdapter.getWrappedAdapter();
		}
	}
	
	return cacheAdapter;
}
 
源代码6 项目: YiBo   文件: AdapterUtil.java
public static BaseListAdapter<?> getBaseListAdapter(Adapter adapter) {
	if (adapter == null) {
		return null;
	}
	
	BaseListAdapter<?> baseListAdapter = null;
	if (adapter instanceof BaseListAdapter<?>) {
        baseListAdapter = (BaseListAdapter<?>)adapter;
	} else if (adapter instanceof HeaderViewListAdapter) {
		HeaderViewListAdapter headerViewAdapter = (HeaderViewListAdapter)adapter;
		if (headerViewAdapter.getWrappedAdapter() instanceof BaseListAdapter<?>) {
			baseListAdapter = (BaseListAdapter<?>)headerViewAdapter.getWrappedAdapter();
		}
	}
	
	return baseListAdapter;
}
 
源代码7 项目: YiBo   文件: HomePageHeaderDoubleClickListener.java
private CacheAdapter<?> getCacheAdapter(ListAdapter adapter) {
	CacheAdapter<?> cacheAdapter = null;
	if (adapter instanceof CacheAdapter) {
        cacheAdapter = (CacheAdapter<?>)adapter;
	} else if (adapter instanceof HeaderViewListAdapter) {
		HeaderViewListAdapter headerViewAdapter = (HeaderViewListAdapter)adapter;
		if (headerViewAdapter.getWrappedAdapter() instanceof CacheAdapter<?>) {
			cacheAdapter = (CacheAdapter<?>)headerViewAdapter.getWrappedAdapter();
		}
	}
	return cacheAdapter;
}
 
源代码8 项目: rss   文件: Utilities.java
static
void setTitlesAndDrawerAndPage(Fragment fragment, int absolutePos)
{
    String[] navTitles = s_resources.getStringArray(R.array.navigation_titles);

    if(null != fragment)
    {
        switchToFragment(fragment, false);
    }

    ListView list = s_fragmentDrawer.m_listView;
    HeaderViewListAdapter headerAdapter = (HeaderViewListAdapter) list.getAdapter();
    int headers = headerAdapter.getHeadersCount();

    int listPosition = -10 == absolutePos ? s_viewPager.getCurrentItem() + headers : absolutePos;
    int viewPagerPos = -10 == absolutePos ? s_viewPager.getCurrentItem() : absolutePos - headers;

    // Check the drawer item.
    String title = PagerAdapterTags.s_tagList.get(0);
    String subTitle = null;
    int imageRes = R.drawable.ic_action_labels;

    if(s_fragmentFavourites.isVisible())
    {
        listPosition = 0;
        title = navTitles[0];
        imageRes = R.drawable.ic_action_important;
    }
    else if(s_fragmentManage.isVisible())
    {
        listPosition = 1;
        title = navTitles[1];
        imageRes = R.drawable.ic_action_storage;
    }
    else if(s_fragmentSettings.isVisible())
    {
        listPosition = 2;
        title = navTitles[2];
        imageRes = R.drawable.ic_action_settings;
    }
    else
    {
        ArrayAdapter<String[]> adapter = (ArrayAdapter<String[]>) headerAdapter.getWrappedAdapter();

        if(null != adapter && 0 < adapter.getCount())
        {
            String[] item = adapter.getItem(viewPagerPos);
            title = item[0];
            int count = null == item[1] || item[1].isEmpty() ? 0 : Integer.parseInt(item[1]);
            String countString = s_resources.getQuantityString(R.plurals.actionbar_subtitle_unread, count, count);
            subTitle = 0 == count ? null : countString;
        }
    }
    s_actionBar.setTitle(title);
    s_actionBar.setSubtitle(subTitle);
    s_actionBar.setIcon(imageRes);

    list.setItemChecked(listPosition, true);

    // If we must change the view pager page.
    if(0 <= viewPagerPos)
    {
        // Switch the view pager page if different.
        if(s_viewPager.getCurrentItem() != viewPagerPos)
        {
            s_viewPager.setCurrentItem(viewPagerPos);
        }
    }
}