Browse Source

add adapter

房丽婷 3 years ago
parent
commit
10d80da91f

+ 4 - 8
app/src/main/java/com/example/mymusic/Music.java

@@ -3,16 +3,12 @@ package com.example.mymusic;
 import android.view.View;
 import android.widget.TextView;
 
-import androidx.annotation.NonNull;
 import androidx.recyclerview.widget.RecyclerView;
 
-public class Music extends RecyclerView.ViewHolder {
-    TextView textView;
-    CellPrototypeInterface cellPrototypeInterface;
-
-    public Music(@NonNull View itemView) {
-        super(itemView);
-        textView = itemView.findViewById(R.id.);
+public class Music {
+    String musicName;
 
+    public Music(String musicName){
+        this.musicName = musicName;
     }
 }

+ 26 - 29
app/src/main/java/com/example/mymusic/MusicAdapter.java

@@ -1,54 +1,51 @@
 package com.example.mymusic;
 
 import android.database.DataSetObserver;
+import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.Adapter;
+import android.widget.TextView;
 
-public class MusicAdapter extends Adapter<Music.> implements CellPrototypeInterface{
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
 
-    @Override
-    public int getCount() {
-        return 0;
-    }
+import java.util.List;
 
-    @Override
-    public Object getItem(int i) {
-        return null;
-    }
+public class MusicAdapter extends RecyclerView.Adapter<MusicAdapter.ViewHolder> {
 
-    @Override
-    public long getItemId(int i) {
-        return 0;
-    }
+    List<Music> musicList;
 
-    @Override
-    public boolean hasStableIds() {
-        return false;
-    }
+    class ViewHolder extends RecyclerView.ViewHolder{
 
-    @Override
-    public View getView(int i, View view, ViewGroup viewGroup) {
-        return null;
+        TextView Name;
+
+        public ViewHolder(View itemView) {
+            super(itemView);
+            View musicName = itemView.findViewById(R.id.cell);
+        }
     }
 
-    @Override
-    public int getItemViewType(int i) {
-        return 0;
+    public MusicAdapter(List<Music> musicList1){
+        musicList = musicList1;
     }
 
+    @NonNull
     @Override
-    public int getViewTypeCount() {
-        return 0;
+    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.cell,parent,false);
+        ViewHolder viewHolder = new ViewHolder(view);
+        return viewHolder;
     }
 
     @Override
-    public boolean isEmpty() {
-        return false;
+    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
+        Music music = musicList.get(position);
+        holder.Name.setText(music.musicName);
     }
 
     @Override
-    public void cellClicked(Music music) {
-
+    public int getItemCount() {
+        return musicList.size();
     }
 }

+ 7 - 0
app/src/main/res/layout/cell.xml

@@ -1,6 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
 <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
+    <TextView
+        android:id="@+id/cell"
+        android:layout_width="match_parent"
+        android:layout_height="50dp"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
 </androidx.constraintlayout.widget.ConstraintLayout>