Android多屏应用程序

jay*_*jay 6 layout android multiscreen android-activity

你如何在Android应用程序中处理多个屏幕?我已经开发了底部的标签栏没有问题,但我想要做的是用我在项目中创建的新.xml布局文件中的内容替换屏幕上的所有内容.另外,我如何将后端代码绑定到新的布局文件?我敢肯定这个问题可能已经存在并且是可谷歌的(可能已经成了一个新单词).但是,我不确切地知道我在寻找什么.在此先感谢您的帮助.

Tom*_*mmy 6

您需要做的是,创建一个新的Activity并将其添加到AndroidManifest.xml:

<activity android:name="ActivityClassName" android:label="Label for the Activity"></activity>
Run Code Online (Sandbox Code Playgroud)

并且可以在方法中调用:

public void startActivity() {
    Intent someName = new Intent(CurrentClass.this, ActivityClassName.class);
    startActivity(someName);
}
Run Code Online (Sandbox Code Playgroud)


Phi*_*llo 5

Android应用程序通常为每个屏幕使用单独的Activity,并使用Activity.startActivityActivity.startActivityForResult在它们之间切换.您可以通过Intent.putExtra将任意数据传递给Activity .

希望这可以帮助,

Phil Lello


Jos*_*arl 5

这实际上取决于您希望应用程序如何流动.

让我们考虑用户执行以下操作的方案:

  1. 开始您的第一项活动
  2. 按第二个选项卡
  3. 按第三个选项卡
  4. 按下后退按钮

如果您为每个屏幕使用单独的活动,则会发生以下情况

  1. 活动1开始
  2. 活动2开始
  3. 活动3开始
  4. 活动3关闭,用户返回活动2

(在这种情况下,再次按下后退按钮会将您带回活动1,再次按下它将退出您的应用程序)

如果您对所有选项卡使用了一个活动,则会发生以下情况

  1. 活动1开始
  2. 活动1将选项卡内容设置为选项卡2内容
  3. 活动1将选项卡内容设置为选项卡3内容
  4. 活动1关闭,用户返回主屏幕

如果您正在使用带有选项卡的屏幕,那么第二种方法(具有TabHost或类似的单个Activity )是首选方法,否则用户最终会生成一个大型活动堆栈,只需在选项卡之间切换(这意味着如果它们在选项卡之间切换)很多时候他们必须按下后退按钮才能退出).

如果你想采用单一活动方法,那就做一些研究TabHostTabContentFactory.在createTabContent工厂的方法中,您可以从XML中扩展视图/布局,以设置为使用的选项卡内容View.inflate.如果你遇到困难,请查看那些并回来问另一个问题;)