Android fragments 如何在ViewPager中创建RecyclerView
我计划制作一个SlidingTabLayout的recyclerview内部视图页面。。 但我不断收到这个错误E/RecyclerView:没有连接适配器;跳过布局 我在另一个项目上尝试了相同的recyclerview,但没有滑动布局,效果很好 有人能帮我吗?我已经面临这个问题三天多了 此外,我已经浏览了这些问题,但没有一个有帮助 这是我的代码,希望你们能帮忙!谢谢Android fragments 如何在ViewPager中创建RecyclerView,android-fragments,android-studio,android-viewpager,android-recyclerview,android-sliding,Android Fragments,Android Studio,Android Viewpager,Android Recyclerview,Android Sliding,我计划制作一个SlidingTabLayout的recyclerview内部视图页面。。 但我不断收到这个错误E/RecyclerView:没有连接适配器;跳过布局 我在另一个项目上尝试了相同的recyclerview,但没有滑动布局,效果很好 有人能帮我吗?我已经面临这个问题三天多了 此外,我已经浏览了这些问题,但没有一个有帮助 这是我的代码,希望你们能帮忙!谢谢 public class NatureItem { private String mName; private String m
public class NatureItem {
private String mName;
private String mPrice;
private int imgThumbnail;
public String getName() {
return mName;
}
public void setName(String name) {
this.mName = name;
}
public int getThumbnail() {
return imgThumbnail;
}
public void setThumbnail(int thumbnail) {
this.imgThumbnail = thumbnail;
}
public String getPrice() {
return mPrice;
}
public void setPrice(String price) {
this.mPrice = price;
}
}
我的适配器
public class CardAdapter extends RecyclerView.Adapter<CardAdapter.ViewHolder>{
List<NatureItem> mItems;
public CardAdapter() {
super();
mItems = new ArrayList<>();
NatureItem nature = new NatureItem();
nature.setName("Zt Premium 10W-40SN(3F)");
nature.setThumbnail(R.drawable.a10w403f);
nature.setPrice("RM00.00");
mItems.add(nature);
nature = new NatureItem();
nature.setName("Free Fricition Formula Synthetic 20W-50SN");
nature.setThumbnail(R.drawable.a20w502);
nature.setPrice("RM00.00");
mItems.add(nature);
nature = new NatureItem();
nature.setThumbnail(R.drawable.fuelbooster);
nature.setName("Zt Fuel Booster");
nature.setPrice("RM00.00");
mItems.add(nature);
nature = new NatureItem();
nature.setName("Zt Engine Performance");
nature.setThumbnail(R.drawable.performance);
nature.setPrice("RM00.00");
mItems.add(nature);
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.recycler_view_card_item, viewGroup, false);
ViewHolder viewHolder = new ViewHolder(v);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder viewHolder, int i) {
NatureItem nature = mItems.get(i);
viewHolder.tvNature.setText(nature.getName());
viewHolder.imgThumbnail.setImageResource(nature.getThumbnail());
viewHolder.tvPrice.setText(nature.getPrice());
}
@Override
public int getItemCount() {
return mItems.size();
}
class ViewHolder extends RecyclerView.ViewHolder {
public ImageView imgThumbnail;
public TextView tvNature;
public TextView tvPrice;
public ViewHolder(View itemView) {
super(itemView);
imgThumbnail = (ImageView)itemView.findViewById(R.id.image);
tvNature = (TextView)itemView.findViewById(R.id.name);
tvPrice = (TextView)itemView.findViewById(R.id.price);
}
}
我的寻呼机在这里呼叫
public class Tab1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v =inflater.inflate(R.layout.activity_home,container,false);
return v;
}
}
XML文件(活动\主页)
您可以使用android support TabLayout,而不是slidingTabLayout。它使您可以轻松地使用recyclerView。您在哪里使用班级主页或Tab1?请发布更多代码。@GaneshBhambarkar Tab1用作SlidengTableOut,hompage是由Tab1膨胀的活动。。是的。。我是从以下教程
public class Tab1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v =inflater.inflate(R.layout.activity_home,container,false);
return v;
}
<?xml version="1.0" encoding="utf-8"?>
<Button
android:layout_width="220dp"
android:layout_height="wrap_content"
android:text="@string/allproduct_button"
android:id="@+id/button2"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:background="@color/colorAccent"
android:onClick="onClick"
android:textColor="#FFFFFF" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/BestSellTitle"
android:id="@+id/textView"
android:layout_below="@+id/button2"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/textView">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>