RecyclerView를 구현하기위한 예제 코드를 가져 왔지만이를 내 응용 프로그램의 Child Fragment에서 작동하도록 조 변경하려고했습니다.안드로이드 | ViewHolder
코드는 아래 '만들기 목록 - 예'는 Creating Lists and Cards
내 어댑터에 문제로 실행 .. 먼저
public static class ViewHolder extends RecyclerView.ViewHolder {
// each data item is just a string in this case
public TextView mTextView;
public ViewHolder(TextView v) {
super(v);
mTextView = v;
}
}
> @Override
> public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
> int viewType) {
> View v = LayoutInflater.from(parent.getContext())
> .inflate(R.layout.my_text_view, parent, false);
> ViewHolder vh = new ViewHolder(v);
> return vh;
> }
, 내가 생성자를 호출하고 불평 구축하지 않습니다 생성자가 TextView를 기대할 때 View가있는 ViewHolder. 코드를 보면 동의합니다! 하지만 공식적인 예입니다. 맞을 것 같습니까?
예제와 비교할 때 내 버전과 다른 점은 무엇입니까? 내가 생각할 수있는 두 가지 ...
1) 레이아웃 my_text_view는 예제에 나와 있지 않으므로 직접 작성했습니다. 내가 바르게 만들었 니?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/t_title"
android:title="title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
2) 나는 내 아이의 조각에서 어댑터를 호출하고, 그리고 예를 염두에 조각 작성되지 않았습니다. 내가 이해할 수있는 것보다 더 많이 물었을 것입니다.
여전히 이해할 수있는 한이를 통해 작업하십시오. 내 'OnCreateViewHolder'로 들어오는 '부모'가 내 RecyclerView입니까?
'v'는 'my_text_view'의 LinearLayout이어야합니까?
'ViewHolder'는 내 xml에서 TextView와 동일한 mTextView 속성을 가진 클래스가되어야합니다.
내가 어떻게 v = LinearLayout에서 TextView로가는지도 모르겠다 ??
누군가는이 멍청한 놈에게 설명하는 것을 돕고 싶습니까 ??
예, 약간의 차이가 있습니다. 'ViewH' 생성자를'View v'로 바꾸고'(TextView) v.findViewById (R.id.t_title)'를 사용하여'TextView'를 얻으십시오. –