让我们考虑,我有2 fragment a & b
Android的片段没有表现出先前的位置交易
片段包含视图寻呼机,横向网格视图和按钮图像等与滚动。 当我点击Fragment a
中的一个项目时,它会转到fragment b
,当我点击后退按钮fragment b
时,它会回到fragment a
。所有的工作都很完美。
我的问题是在后面按了fragment b
,它从开始加载fragment a
。我想在交易开始的地方显示fragment a
(比如底部)的确切位置。
我正在做每个项目的适配器中的所有片段事务,代码如下所示。
Bundle arguments = new Bundle();
Fragment fragment = null;
MyClass cls= (MyClass) obj.get(position);
arguments.putParcelable("single", offer);
// Start a new fragment
fragment = new DetailFragment();
fragment.setArguments(arguments);
FragmentTransaction transaction = activity .getSupportFragmentManager().beginTransaction();
transaction.setCustomAnimations(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
transaction.replace(R.id.content_page_frame, fragment, OfferZoneDetailFragment.ARG_ITEM_ID);
transaction.addToBackStack(DetailFragment.ARG_ITEM_ID);
transaction.commit();
如何从其他片段回来时加载片段事务的开始位置。
这取决于你想要显示/保持位置的元素的确切类型,看看:http://stackoverflow.com/questions/15678489/best-way-save-restore-textview-position-in-scrollview&http://stackoverflow.com/questions/29208086/save-the-position-of-scrollview-when-the-orientation-changes &http://stackoverflow.com/questions/8619794/maintain-scroll-position-of-gridview-through-screen-rotation&http://stackoverflow.com/questions/3014089/maintain-save-restore-scroll-position当我返回一个列表视图 –
@MovsarBekaev我怎么知道确切的类型位置?,所有的链接都提到了列表和网格,我问的是有5个网格和1个列表的片段 – Sree
我修复了链接。你说你想要的是在切换片段时保存视图区域的位置,对吧?如果是这样,你需要处理片段中的元素,而不是片段本身,据我所知,你可以通过在Bundle或静态变量或其他任何地方保存位置来切换,并在切换时调用一些恢复方法反之亦然.. –