<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                **轉載請注明本文出自Cym的博客([http://blog.csdn.net/cym492224103](http://blog.csdn.net/cym492224103)**),謝謝支持!** ** ** 前言 大家都知道ListView在我們開發中很常用,Android5.0的到來,它給我們帶來了一個替代 ListView的新的控件,也可以說是ListView的升級版,那就是RecyclerView。 接下來就讓我們看一下,它們的作用的用法吧~! RecyclerView [RecyclerView](http://developer.android.com/reference/android/support/v7/widget/RecyclerView.html)控件是比[ListView](http://developer.android.com/reference/android/widget/ListView.html)更先進、靈活的版本。 該[RecyclerView](http://developer.android.com/reference/android/support/v7/widget/RecyclerView.html)類通過以下幾點簡化了顯示和處理大量的數據: 1.為每個條目位置提供了布局管理器(**RecyclerView.setLayoutManager**) [RecyclerView](http://developer.android.com/reference/android/support/v7/widget/RecyclerView.html)提供這些內置的布局管理器: [LinearLayoutManager](http://developer.android.com/reference/android/support/v7/widget/LinearLayoutManager.html)(用來)顯示垂直或水平滾動的列表項 [GridLayoutManager](http://developer.android.com/reference/android/support/v7/widget/GridLayoutManager.html)(用來)顯示網格中的item(項) [StaggeredGridLayoutManager](http://developer.android.com/reference/android/support/v7/widget/StaggeredGridLayoutManager.html)(用來)顯示交錯的網格item(項目) 可以通過繼承[RecyclerView.LayoutManager](http://developer.android.com/reference/android/support/v7/widget/RecyclerView.LayoutManager.html)類來自定義自己的布局管理器。 2.為每個條目設置了操作動畫(**RecyclerView.setItemAnimator**) 使用步驟: 1.導入sdk/extras/android/support/v7/recyclerview/libs/android-support-v7-recyclerview.jar? 2.xml配置 ~~~ <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical" tools:listitem="@layout/list_basic_item" /> </RelativeLayout> ~~~ 3.Activity代碼 ~~~ public class Main extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 獲取RecyclerView對象 final RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view); // 創建線性布局管理器(默認是垂直方向) final LinearLayoutManager layoutManager = new LinearLayoutManager(this); // 為RecyclerView指定布局管理對象 recyclerView.setLayoutManager(layoutManager); // 創建Adapter final SampleRecyclerAdapter sampleRecyclerAdapter = new SampleRecyclerAdapter(); // 填充Adapter recyclerView.setAdapter(sampleRecyclerAdapter); } } ~~~ 4.Adapter代碼 ~~~ public class SampleRecyclerAdapter extends RecyclerView.Adapter<SampleRecyclerAdapter.ViewHolder> { private final ArrayList<SampleModel> sampleData = DemoApp.getSampleData(20); // 用于創建控件 @Override public ViewHolder onCreateViewHolder(ViewGroup parentViewGroup, int i) { // 獲得列表項控件(LinearLayer對象) // list_basic_item.xml布局文件中只包含一個<LinearLayer>標簽,在該標簽中包含 // 了一個<TextView>標簽 // item是LinearLayout對象 View item = LayoutInflater.from(parentViewGroup.getContext()).inflate( R.layout.list_basic_item, parentViewGroup, false); return new ViewHolder(item); } // 為控件設置數據 @Override public void onBindViewHolder(ViewHolder viewHolder, final int position) { // 獲取當前item中顯示的數據 final SampleModel rowData = sampleData.get(position); // 設置要顯示的數據 viewHolder.textViewSample.setText(rowData.getSampleText()); viewHolder.itemView.setTag(rowData); } @Override public int getItemCount() { return sampleData.size(); } // 刪除指定的Item public void removeData(int position) { sampleData.remove(position); // 通知RecyclerView控件某個Item已經被刪除 notifyItemRemoved(position); } // 在指定位置添加一個新的Item public void addItem(int positionToAdd) { sampleData.add(positionToAdd,new SampleModel("新的列表項" + new Random().nextInt(10000))); // 通知RecyclerView控件插入了某個Item notifyItemInserted(positionToAdd); } public static class ViewHolder extends RecyclerView.ViewHolder { private final TextView textViewSample; public ViewHolder(View itemView) { super(itemView); textViewSample = (TextView) itemView .findViewById(R.id.textViewSample); } } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看