Android 中的adapter和作用以及常見的adapter


簡述:

adapter是數據與ui之間的橋梁,它把后台數據與前端ui連接到一起,是一個展示數據的載體。

常用的adapter:

BaseAdapter : 基礎適配器,對於spinner listview gridview 都是通用的,它是一個抽象類,繼承后要實現的方法很多

ArrayAdapter : 是BaseAdapter的一個子類,可以直接使用泛型,使用起來比較簡單

CursorAdapter:

ListAdapter:

SimpleAdapter :擴展性好,可以定義各種各樣的布局,它里面涉及到的數據全是hashmap構成的List

SimpleCursorAdapter: 可以從數據庫中讀取數據顯示在列表上

ResourceCursorAdapter:


SimpeCursorAdapter的案例

ContentResolver contentResolver = getContentResolver();  
 Cursor query = contentResolver.query(Contacts.People.CONTENT_URI, null, null, null, null);  
 //將query交給activity管理,使其與activity同步  
 startManagingCursor(query);  
 SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_expandable_list_item_1, query, new String[]{Contacts.People.NAME}, new int[]{android.R.id.text1});  

FragmentPagerAdapter

使用的時候可以將保存fragment的集合直接傳入,然后結合 viewpager來使用

fragmentpageradapter是PagerAdapter中的其中一種實現,

它繼承android.support.v4.view.PagerAdapter。它將每一個頁面表示為一個 Fragment,並且每一個Fragment都將會保存到fragment manager當中。而且,當用戶沒可能再次回到頁面的時候,fragment manager才會將這個Fragment銷毀。

<span style="white-space:pre">        </span>mViewPager = (ViewPager) view.findViewById(R.id.vp_show_myadd_patient); 

mShowMyPatientListAdapter = new ShowMyPatientListAdapter(getActivity().getSupportFragmentManager());  
mViewPager.setAdapter(mShowMyPatientListAdapter);  
<ol class="dp-xml" start="1"><li class="alt"><span><span>class ShowMyPatientListAdapter extends FragmentPagerAdapter {  </span></span></li><li><span>  </span></li><li class="alt"><span>    public ShowMyPatientListAdapter(FragmentManager fm) {  </span></li><li><span>        super(fm);  </span></li><li class="alt"><span>    }  </span></li><li><span>  </span></li><li class="alt"><span>    @Override  </span></li><li><span>    public Fragment getItem(int arg0) {  </span></li><li class="alt"><span>        return mArrayList.get(arg0);  </span></li><li><span>    }  </span></li><li class="alt"><span>  </span></li><li><span>    @Override  </span></li><li class="alt"><span>    public int getCount() {  </span></li><li><span>        return mArrayList.size();  </span></li><li class="alt"><span>    }  </span></li><li><span>  </span></li><li class="alt"><span>}  </span></li></ol>

fragmentpageradapter 中常見的方法:

public void destroyItem(ViewGroup container, int position, Object  object)remove a page for the given position

<-- 未完-->


android.support.v4.view.PagerAdapter


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM