-1
我想在AppCompatActivity的ViewPager中的片段中創建一個ListView。在AppCompatActivity中,所有視圖元素都被封裝在CoordinatorLayout中。因爲我使用了CoordinatorLayout。我必須使用RecylerView我試圖遵循developer.android.com的培訓。是否有可能將此RecyclerView代碼更改爲RecyclerViewFragment代碼?如果可能的話,請幫我改變它。Android - RecyclerView到RecyclerViewFragment
感謝
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.content.ContextCompat;
import android.support.v4.app.Fragment;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.Collections;
import java.util.List;
public class AdapterFish extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private Context context;
private LayoutInflater inflater;
List<DataFish> data= Collections.emptyList();
DataFish current;
int currentPos=0;
// create constructor to innitilize context and data sent from MainActivity
public AdapterFish(Context context, List<DataFish> data){
this.context=context;
inflater= LayoutInflater.from(context);
this.data=data;
}
// Inflate the layout when viewholder created
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view=inflater.inflate(R.layout.tab2, parent,false);
MyHolder holder=new MyHolder(view);
return holder;
}
// Bind data
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
// Get current position of item in recyclerview to bind data and assign values from list
MyHolder myHolder= (MyHolder) holder;
DataFish current=data.get(position);
myHolder.textmatkul.setText(current.matkul);
myHolder.textwaktu_batal.setText("Tanggal Batal: " + current.waktu_batal);
myHolder.textwaktu_pengganti.setText("Tanggal Pengganti: " + current.waktu_pengganti);
myHolder.textdosen.setText("Nama Dosen: " + current.dosen);
myHolder.textruang.setText("Ruang: " + current.ruang);
myHolder.textalasan.setText("Alasan: " + current.alasan);
}
// return total item from List
@Override
public int getItemCount() {
return data.size();
}
class MyHolder extends RecyclerView.ViewHolder{
TextView textmatkul;
TextView textwaktu_batal;
TextView textwaktu_pengganti;
TextView textdosen;
TextView textruang;
TextView textalasan;
// create constructor to get widget reference
public MyHolder(View itemView) {
super(itemView);
textmatkul= (TextView) itemView.findViewById(R.id.textmatkul);
textwaktu_batal = (TextView) itemView.findViewById(R.id.textwaktu_batal);
textwaktu_pengganti = (TextView) itemView.findViewById(R.id.textwaktu_pengganti);
textdosen = (TextView) itemView.findViewById(R.id.textdosen);
textalasan = (TextView) itemView.findViewById(R.id.textalasan);
textruang = (TextView) itemView.findViewById(R.id.textruang);
}
}
}