GridView项目的片段?
问题描述:
是否可以在GridView中使用Fragments?GridView项目的片段?
我试图做:
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
if(convertView == null)
{
Rune rune = (Rune) getItem(position);
RuneFragment runeFragment = new RuneFragment();
FragmentTransaction transaction = activity.getSupportFragmentManager().beginTransaction();
transaction.add(parent.getId(), runeFragment);
transaction.commit();
runeFragment.renderRune(rune);
convertView = parent.findViewById(R.id.rune_grid_fragment);
Log.i(MainActivity.TAG, "" + convertView); //====> null
}
return convertView;
}
但原来convertView总是空。
答
你可以这样做。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
// edited ,add your layout here
convertView = LayoutInflater.from(context).inflate(R.layout.your_layout, null);
Rune rune = (Rune) getItem(position);
RuneFragment runeFragment = new RuneFragment();
FragmentTransaction transaction = activity.getSupportFragmentManager().beginTransaction();
transaction.add(parent.getId(), runeFragment);
transaction.commit();
runeFragment.renderRune(rune);
Log.i(MainActivity.TAG, "" + convertView); //====> null
}
return convertView;
}