Articles of android recyclerview

使用RecyclerView和CardView触摸反馈

我很想为我的开源库启用触摸反馈。 我创build了一个RecyclerView和一个CardView 。 CardView包含具有不同onClick操作的不同区域。 现在,如果用户点击卡片中的任意位置,我很乐意触发Ripple效果,但是我无法实现此行为。 这是我的listitem,你也可以在GitHub上find它: https : //github.com/mikepenz/AboutLibraries/blob/master/library/src/main/res/layout/listitem_opensource.xml <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:clickable="true" android:background="@drawable/button_rect_normal"/> <LinearLayout android:padding="6dp" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:gravity="center_vertical" android:paddingLeft="8dp" android:paddingRight="8dp" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView android:id="@+id/libraryName" android:textColor="@color/title_openSource" android:textSize="@dimen/textSizeLarge_openSource" android:textStyle="normal" android:layout_width="0dp" android:layout_weight="5" android:layout_height="wrap_content" android:ellipsize="end" android:maxLines="1"/> <TextView android:id="@+id/libraryCreator" android:textColor="@color/text_openSource" android:textStyle="normal" android:layout_width="0dp" android:layout_weight="2" android:layout_height="wrap_content" android:layout_marginTop="2dp" android:gravity="right" android:maxLines="2" android:textSize="@dimen/textSizeSmall_openSource"/> </LinearLayout> <View android:layout_width="match_parent" android:layout_height="1px" android:layout_marginTop="4dp" android:background="@color/dividerLight_openSource"/> <TextView android:id="@+id/libraryDescription" […]

在RecyclerView中保存EditText内容

我有EditText列表项目,我不知道会有多less项目。 当我在EditTextinput一些文本时遇到问题,然后向下滚动RecyclerView ,再次向上滚动后,我的第一个EditText没有文本。 我想知道什么,我应该在哪里编写代码,以便当用户正在打字或完成打字(我正在考虑用TextWatcher这样做)在EditText文本被保存到一个文件(我会保存在外部存储中的.txt文件) 我应该这样做在活动的onCreate方法或适配器类或其他地方? 这是一些代码 主要活动代码 public class MainActivity extends Activity { RecyclerView mRecyclerView; MyAdapter mAdapter; String[] mDataSet= new String[20]; @Override protected void onCreate(Bundle savedInstanceState) { // generating text for editText Views for (int i = 0; i<=19; i++){ mDataSet[i]= "EditText n: "+i; } super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view); mAdapter = new MyAdapter(mDataSet); […]

Recyclerview在滚动期间更改项目

我有一个RecyclerView。 每行都有一个播放button,textview和Progressbar。 当点击播放button必须从我的SD卡播放audio,并有进展Progressbar问题是,当我向下滚动recyclerview更改下一行Progress.means我一次可以在屏幕上放5个项目。 当我滚动到第6行,第6行seekbar突然改变。 public class ListAdapter extends RecyclerView.Adapter { private List<Historyitem> stethitems; public Context mContext; public Activity activity; public Handler mHandler; static MediaPlayer mPlayer; static Timer mTimer; public ListAdapter(Activity activity,Context mContext,List<Historyitem> stethitems) { this.stethitems = stethitems; this.mContext = mContext; this.activity = activity; } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) { View rootView = […]

Android回收器视图中的项目之间的边距

您好,我正在学习本教程 http://www.journaldev.com/10024/android-recyclerview-and-cardview-example-tutorial 现在我面临一个奇怪的问题,每个cardview项目内的回收站视图之间的差距太多了。 问题 如何减less放置在回收站视图内的每个Cardview项目之间的边距。

如何保持RecyclerView始终滚动底部

我使用Recyclerviewreplace为列表视图我想保持Recyclerview始终滚动底部。 ListView可以使用这个方法setTranscriptMode(AbsListView.TRANSCRIPT_MODE_ALWAYS_SCROLL) RecyclerView我使用方法smoothScrollToPosition(myAdapter.getItemCount() – 1) 但是当软键盘popup时,它会replaceRecyclerView的内容。

在RecyclerView中的图像奇怪的行为

我正在使用android.support.v7.widget.RecyclerView来显示包含文本和在某些情况下也包含图像的简单项目。 基本上我从这里https://developer.android.com/training/material/lists-cards.html跟随教程,只是从String []更改为JSONArray和ViewHolder的XML的mDataset的types。 我的RecyclerView位于一个简单的片段: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"> <!– A RecyclerView with some commonly used attributes –> <android.support.v7.widget.RecyclerView android:id="@+id/my_hopps_recycler_view" android:scrollbars="vertical" android:layout_centerInParent="true" android:layout_width="200dp" android:layout_height="wrap_content"/> </RelativeLayout> 在这个片段中,我加载了来自web服务器的所有信息。 收到信息后,我在RecyclerView中初始化这些项目。 我使用在我的Fragment的onCreate方法中设置的LinearLayoutManager。 添加适配器后,我在我的RecyclerView上调用setHasFixedSize(true)方法。 我的适配器类看起来像这样: import android.graphics.BitmapFactory; import android.support.v7.widget.RecyclerView; import android.util.Base64; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageButton; import android.widget.ImageView; […]