Я делаю GridView
, чтобы динамически содержать набор интерактивных значков, поэтому мне нужно установить адаптер на GridView
и добавить прослушиватель.
mGridView = (GridView) view.findViewById(R.id.listbody);<br>
mGridView.setAdapter(new ListAppAdapter());<br>
mGridView.setOnItemClickListener(this);
И я сам написал Адаптер:
class ListAppAdapter extends BaseAdapter {<br>
...<br>
public View getView(int position, View convertView, ViewGroup parent) {...}<br>
...<br>
}
Теперь мне нужно, чтобы этот GridView
скользил из стороны в сторону жестом, поэтому я попытался ViewFlipper
:
mFlipper = (ViewFlipper) mInflate.inflate(R.layout.main, (ViewGroup)findViewById(R.id.ViewFlipper));<br>
mFlipper.addView(mGridView);<br>
mDetector = new GestureDetector(this);
НО я получил исключение:
The specified child already has a parent. You must call removeView() on the child's parent first.
Затем я попытался обернуть GridView
в другой FrameLayout
в XML и добавьте FrameLayout
к ViewFlipper
, Жест броска был захвачен, но GridView
не появился, я бросал пробел FrameLayout
!
Кто-нибудь знает, каксправиться с этим?
С параметрами XML и Layout все в порядке, когда я добавляю простой ImageView
к ViewFlipper, он работает.
И я попытался удалить все дочерние представления ViewFlipper
и не добавил тот же экземпляр GridView
.Но когда я добавляю GridView
, исключение все еще приходит.