RecycleView初级使用
来源:互联网 发布:vb怎么建立数据库 编辑:程序博客网 时间:2024/05/17 03:40
Message的数据显示存放
Activity内容
public class Messages { private int imageId; private String contact; private String message; private String time; public Messages(int imageId, String contact, String message, String time) { this.imageId = imageId; this.contact = contact; this.message = message; this.time = time; } public int getImageId() { return imageId; } public String getContact() { return contact; } public String getMessage() { return message; } public String getTime() { return time; }}
XML内容
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="53dp" android:layout_marginTop="3dp" android:paddingTop="3dp" android:orientation="horizontal"> <ImageView android:layout_width="50dp" android:layout_height="match_parent" android:id="@+id/imageId"/> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/contact" android:textSize="18sp" android:layout_alignParentBottom="true"/> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/message" android:layout_alignParentTop="true" android:layout_marginTop="2dp"/> </RelativeLayout> </LinearLayout> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="3" android:gravity="center" android:id="@+id/time"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0.1dp" android:layout_marginTop="3dp" android:background="#000000"/></LinearLayout>
Message的适配器
public class MessageAdapter extends RecyclerView.Adapter<MessageAdapter.ViewHolder>{ private List<Messages> MessagesList; static class ViewHolder extends RecyclerView.ViewHolder { ImageView imageView; TextView contactText; TextView messageText; TextView timeText; public ViewHolder(View itemView) { super(itemView); imageView = (ImageView) itemView.findViewById(R.id.imageId); contactText = (TextView) itemView.findViewById(R.id.contact); messageText = (TextView) itemView.findViewById(R.id.message); timeText = (TextView) itemView.findViewById(R.id.time); } } public MessageAdapter(List<Messages> messagesList) { MessagesList = messagesList; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.messages, parent, false); ViewHolder holder = new ViewHolder(view); return holder; } @Override public void onBindViewHolder(MessageAdapter.ViewHolder holder, int position) { Messages messages = MessagesList.get(position); holder.imageView.setImageResource(messages.getImageId()); holder.contactText.setText(messages.getContact()); holder.messageText.setText(messages.getMessage()); holder.timeText.setText(messages.getTime()); } @Override public int getItemCount() { return MessagesList.size(); }}
main里XML的代码
只一个RecyclerView
public class ChatFragment extends AppCompatActivity{ private List<Messages> messagesList = new ArrayList<Messages>(); private String[] contact = new String[]{"李白","苏轼","诸葛亮","赵云", "姜维","荀彧","郭嘉","周瑜", "杨巨源","汤显祖","杜光庭","陈宫",}; private String[] messsage = new String[]{"情不知所起,一往而深", "生而不可与死,死而不可复生者", "惊觉相思不露,原来只因已入骨。", "原来姹紫嫣红开遍,似这般都付与断井颓垣", "良辰美景奈何天,赏心乐事谁家院", "朝飞暮卷,云霞翠轩","雨丝风片,烟波画船", "锦屏人忒看的这韶光贱", "则为你如花美眷,似水流年。是答儿闲寻遍", "梦短梦长俱是梦,年来年去是何年", "人世之事,非人世所可尽", "这般花花草草由人恋,生生死死随人愿"}; private String[] time = new String[]{"18:59","18:55","18:55","18:53", "18:50","18:50","18:50","18:49", "18:47","18:46","18:45","18:45"}; protected void onCreate(Bundle savedInstanceState) { init(); RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycle_view); LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity()); recyclerView.setLayoutManager(linearLayoutManager); MessageAdapter messageAdapter = new MessageAdapter(messagesList); recyclerView.setAdapter(messageAdapter); } private void init() { for (int i = 0; i < 2; i++) { for (int j = 0; j < contact.length; j++) { Messages messages = new Messages(R.drawable.headphoto, contact[j], messsage[j], time[j]); messagesList.add(messages); } } }}
阅读全文
0 0
- RecycleView初级使用
- RecycleView使用
- RecycleView使用
- recycleview使用
- 多数据显示之强大的RecycleView 使用完全解析(初级基础篇)
- Android RecycleView---- RecycleView的简单使用
- Recycleview的使用
- 浅谈RecycleView使用
- RecycleView的使用
- RecycleView使用体验(一)
- RecycleView使用体验(二)
- RecycleView使用小节
- RecycleView 的使用
- Android RecycleView的使用
- RecycleView的简单使用
- RecycleView 的使用
- RecycleView简单使用
- RecycleView的基础使用
- MDK 5.0支持4.0的方法 MDK V4 legacy support
- 【数据库】关系代数基本运算
- 2017年迪培思昆明国际广告标识及LED照明展会刊(参展商名录)
- SQL优化
- 数据库 order by varchar类型排序
- RecycleView初级使用
- linux中的typeof使用
- Python学习之urllib库
- 表 的补充
- 使用批处理修改注册表的命令参数
- Android Studio 获取SHA1
- APP性能测试中如何获取CPU和PSS数据
- 将两个字符串找出不同,并将不同处高亮显示
- [转]SELinux之于MySQL