我正在研究一个应用程序,并假设我有5种不同的布局以及一个链接到每个布局的主布局。在用户点击第一个按钮时的主布局中,假设通过滑动来进行相关布局。其他观点也一样。在android中滑动页面
当用户转到其中一种布局时,下一个布局也有一些指向其他布局的链接,就像链条一样。而这条链正在通过滑动从布局移动到另一个。
我试图做到这一点与视图鳍状肢,但由于我有这么多不同的布局,他们有背景图像和一些内容,我得到了内存不足的错误。
所以我试图找到这种方式的解决方案。任何想法如何做到这一点?
我正在研究一个应用程序,并假设我有5种不同的布局以及一个链接到每个布局的主布局。在用户点击第一个按钮时的主布局中,假设通过滑动来进行相关布局。其他观点也一样。在android中滑动页面
当用户转到其中一种布局时,下一个布局也有一些指向其他布局的链接,就像链条一样。而这条链正在通过滑动从布局移动到另一个。
我试图做到这一点与视图鳍状肢,但由于我有这么多不同的布局,他们有背景图像和一些内容,我得到了内存不足的错误。
所以我试图找到这种方式的解决方案。任何想法如何做到这一点?
我会建议你使用杰克Whartons ViewPageIndicator:
创建每次你布局的Fragment
和布局与onCreateView()
梅索德您的片段里面设置为您的片段:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.layout, container, false);
}
现在创建一个FragmentPagerAdapter
应该有一个称为getItem()
的方法。 Switch
的位置并将其设置为您的片段:
public Fragment getItem(int position) {
switch(position)
{
case 0:
TestFragment fragment = new TestFragment();
return fragment;
case 1:
TestFragment2 fragment2 = new TestFragment2();
return fragment2;
}
DefaultFragment fragment3 = new DefaultFragment();
return fragment3;
}
现在,你应该能够使用overridePendingTransition(R.anim.animation_leave, R.anim.animation_enter);
活动之间滑动到您的布局(碎片)容易
开始一个新的android.app.Activity
托管每个布局和覆盖转换其中* .anim.animation_leave和_enter已经整齐地在this SO answer中指定给您了。
您可以在打电话之后立即写入overridePendingTransition代码以开始“链接”活动,并且(如果需要)可以通过在活动上调用finish()
或选择“向上”导航后提供相对转换来应用反向效果按下按钮或“后退”按钮。
只有一个活动管理一个布局(根据我的经验)也有利于代码可维护性。
我想要设计的这个页面将是其中一个选项卡。所以如果开始一项新的活动,它会让事情变得更加复杂。感谢您的建议。 – osayilgan 2012-08-14 15:19:01
我看...抱歉,没有意识到这是在一个标签的上下文。回想一下'''''ViewPager'''的建议 - 在tab下有一个view pager听起来很糟糕。它基本上是两种横向导航形式,可能会混淆用户,因为他们希望在选项卡之间滑动,但会遇到来自第一个选项卡的“视图2”?开发人员指南的这一部分非常棒,请阅读它:http://developer.android.com/training/design-navigation/descendant-lateral。html – OceanLife 2012-08-14 15:27:45
假设我基本上有5个选项卡,并且第一个选项卡有一些信息列表,当用户单击其中一个列表项目时,它会滑动到下一个布局,但是以这种方式发生的每件事情都将仍然存在留在第一个标签。其余的选项卡包含其他内容。所以我实际上试图找到一种寻呼方式。正如我所说,我尝试了视图鳍状肢,但由于它把所有的孩子都留在记忆中,所以我得到了内存不足的问题。当用户单击列表中的项目并设置它时,我仍然可以更改内容视图。 – osayilgan 2012-08-14 16:06:13
一个字:Viewpager! – 2012-08-14 14:54:42
内存不足问题呢?它解决了这个问题吗? – osayilgan 2012-08-14 14:55:33
它一次加载3页。我正在使用它我的应用程序与约200张照片和它的工作正常。 – 2012-08-14 14:57:09