我正在学习多窗格应用程序,并且正在运行Master / Detail Flow应用程序,该应用程序在您创建新项目时由Android Studio设置(并选择此选项)。根据创建的Google代码中的注释,应用程序应以多窗格模式显示,以用于具有大屏幕布局的设备。我遇到的问题是无论我使用什么AVD,我只能获得一个窗格。首先,这是主要活动的onCreate方法。请注意,此代码直接来自Google(不是我的代码):
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_item_list);
if (findViewById(R.id.item_detail_container) != null) {
// The detail container view will be present only in the
// large-screen layouts (res/values-large and
// res/values-sw600dp). If this view is present, then the
// activity should be in two-pane mode.
mTwoPane = true;
// In two-pane mode, list items should be given the
// 'activated' state when touched.
((ItemListFragment) getFragmentManager()
.findFragmentById(R.id.item_list))
.setActivateOnItemClick(true);
}
// TODO: If exposing deep links into your app, handle intents here.
}
根据Android Developer docs,在dp至少为640dp x 480dp的设备上运行此代码足够大,可以作为大屏幕,并且可能会在多窗格模式下呈现。我正在使用AVD来模拟Nexus 10 API 19设备,该设备具有800dp x 1280:xhdpi。以下是更多信息:
这是我运行时得到的。显然不显示多个窗格: 为了让它显示多个窗格我需要做什么?当我在USB连接的设备上运行它时,它运行正常,因此代码是准确的。问题必须是我正在使用的AVD?谢谢!
答案 0 :(得分:5)
我遇到了同样的问题:编辑你的AVD,转到高级设置,然后在“自定义皮肤定义”组合框中选择无皮肤。