2016-07-19 37 views
0

标题说这一切,但以防万一我的问题是,我有一个viewpager与两个选项卡,一个用recyclerview从sqlite数据库中获取数据,但只是显示第一个条目,但我创建了更多。viewpager与recyclerview标签片段只显示数据库中的第一项

这是我recyclerview适配器

public class RecyclerViewMessagesAdapter extends RecyclerView.Adapter<RecyclerViewMessagesAdapter.TextMessagesViewHolder>{ 

private DatabaseHandler databaseHandler; 
private Context context; 

public RecyclerViewMessagesAdapter(Context context){ 
    this.context = context; 
    databaseHandler = new DatabaseHandler(context); 
} 

@Override 
public int getItemCount() { 
    return databaseHandler.getAllTextMessage().size(); 
} 

@Override 
public TextMessagesViewHolder onCreateViewHolder(ViewGroup parent,int viewType){ 
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_messages, parent, false); 
    TextMessagesViewHolder textMessagesViewHolder = new TextMessagesViewHolder(view); 
    return textMessagesViewHolder; 
} 

public static class TextMessagesViewHolder extends RecyclerView.ViewHolder { 

    TextView textviewPhoneNumber, textviewDate; 

    TextMessagesViewHolder(View itemView) { 
     super(itemView); 
     textviewPhoneNumber = (TextView)itemView.findViewById(R.id.textview_recyclerview_phone_number); 
     textviewDate = (TextView)itemView.findViewById(R.id.textview_recyclerview_date_to_send); 
    } 
} 

@Override 
public void onBindViewHolder(TextMessagesViewHolder holder, int position) { 
    holder.textviewPhoneNumber.setText(databaseHandler.getMessage(position+1).getPhoneNumber()); 
    holder.textviewDate.setText(String.valueOf(databaseHandler.getMessage(position+1).getDate())); 
} 

@Override 
public void onAttachedToRecyclerView(RecyclerView recyclerView) { 
    super.onAttachedToRecyclerView(recyclerView); 
} 

}

,这是片段类的recyclerview。

public class FragmentHistoryTab extends Fragment{ 

private View rootView; 
private DatabaseHandler databaseHandler; 
private TextView textviewEmptySavings; 
private RecyclerView messagesRecyclerView; 
private OnFragmentInteractionListener mListener; 

public FragmentHistoryTab() { 

} 

@Nullable 
@Override 
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 

    rootView = inflater.inflate(R.layout.fragment_history_tab,container,false); 

    return rootView; 
} 

@Override 
public void onActivityCreated(@Nullable Bundle savedInstanceState) { 
    super.onActivityCreated(savedInstanceState); 

    databaseHandler = new DatabaseHandler(getContext()); 
    textviewEmptySavings = (TextView)rootView.findViewById(R.id.textview_empty_recyclerview); 

    RecyclerViewMessagesAdapter adapter = new RecyclerViewMessagesAdapter(getContext()); 
    messagesRecyclerView = (RecyclerView) rootView.findViewById(R.id.recyclerview_saved_messages); 

    messagesRecyclerView.setHasFixedSize(true); 
    LinearLayoutManager layoutManager = new LinearLayoutManager(getContext()); 
    messagesRecyclerView.setLayoutManager(layoutManager); 
    messagesRecyclerView.setAdapter(adapter); 

    if (databaseHandler.getAllTextMessage().size() >= 1){ 
     textviewEmptySavings.setVisibility(View.GONE); 
     messagesRecyclerView.setVisibility(View.VISIBLE); 
    }else { 
     textviewEmptySavings.setVisibility(View.VISIBLE); 
     messagesRecyclerView.setVisibility(View.GONE); 
    } 
} 

@Override 
public void onStart() { 
    super.onStart(); 
} 

@Override 
public void onResume() { 
    super.onResume(); 
} 

@Override 
public void onPause() { 
    super.onPause(); 
} 

@Override 
public void onStop() { 
    super.onStop(); 
} 

@Override 
public void onAttach(Context context) { 
    super.onAttach(context); 
} 

@Override 
public void onDetach() { 
    super.onDetach(); 
} 

public interface OnFragmentInteractionListener { 

} 

}

在此先感谢!

回答

0

我不知道发生了什么,但它只是固定一个人。

+0

我的坏!仍然有同样的问题,只是显示第一项 – user3317343

+0

我认为我不应该被允许编程了,我现在觉得愚蠢,整个问题的时间与回收视图的布局,父母与高度=“match_parent “ – user3317343