gpt4 book ai didi

android - 编码风格 : Two activities with moSTLy same code but different content view

转载 作者:行者123 更新时间:2023-11-29 17:26:07 26 4
gpt4 key购买 nike

我有两个具有相同代码的 Activity 。主要区别在于它们具有不同的内容 View (因此有一些不同的元素)。

推荐什么?我应该让它像在两个 Activity 中一样,还是应该让它成为一个 Activity ,并在每次有关于 View 的内容时使用 if else 查询来解决它(例如 setcontentview 和一些(5)其他 View 相关代码块)?

例如

if (isLandscape) { //landscape looks different than portrait
setContentView(R.layout.activity_landscape);
} else {
setContentView(R.layout.activity_normal);
}

这是推荐的/好的编码风格吗?

最佳答案

如果您要为纵向和横向设置不同的 View ,这可以通过使用 layout-land 目录的资源文件并在横向目录中添加具有相同名称的新 Activity 布局来完成。

因此,您将在布局和布局文件夹中都有一个 activity.xml 文件。

不过,为了回答您的一般问题,在您的 Activity 中使用成员变量来区分您的两种情况效果很好。然后,当您需要使用 if/else 逻辑根据此变量的状态执行某些操作时。

例如,在平板电脑上使用带有独特 View 容器的单独布局。您可以检查 if(findViewById(R.id.tablet_container)) != null) 然后您将基于此将 isTabletView 成员变量设置为 true 或 false。任何时候您需要根据应用程序是在平板电脑还是手机上运行来执行某些操作时,您都可以引用此变量。

关于android - 编码风格 : Two activities with moSTLy same code but different content view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34598336/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com