1

Should I put xml landscape layout files for ALL the activities in the same layout-land folder? If there are 3 activities and 3 landscape layout, then how should I name them in layout land folder to be recognized?

I have 2 activities - A and B, they each have 2 lanscape layout in layout-land folder but only activity A can find the layout for landscape, whereas activity B finds the landscape layout for activity A and use it. Why? How to map the landscape layout to its activities?

//ACTIVITY- A
    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Intent bmr= new Intent(TdeeActivity.this,BMRActivity.class);
startActivityForResult(bmr,CALLED_ACTIVITY);    

}

@Override
protected void onResume() {
            super.onResume();
            setContentView(R.layout.activity_tdee);
            Button ok=(Button)findViewById(R.id.btnOk);
            rdActLevel=(RadioGroup) findViewById(R.id.rd);
            ok.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    showResult();
                }

            });             
}
4

3 回答 3

0

这不是一个规则,但最好预测用户体验。如果您没有包含一种横向布局,Android 会在手机旋转时自动调整其大小。这可能会导致糟糕的用户体验(如图像拉伸、错误的小部件尺寸或重叠)。如果您在两个方向的多种屏幕尺寸上测试您的应用程序并且对结果感到满意,那么您不需要为每个布局添加一个。

对于 Activity 关系,Activity 的数量和布局的数量之间没有联系(您可能有许多带有一个布局的活动,通过代码完成的更改最少)。这实际上取决于每个布局代表什么。

layout-land对于最后一个问题,您需要在layout文件夹中使用与 Android 文件夹中完全相同的名称命名 xml 文件,以便正确映射它们。

于 2012-10-21T11:27:08.153 回答
0

您给它们与纵向模式中的名称相同,只要将它们放在正确的文件夹(布局域)中,它们就会自动加载。是的,如果有意义的话,您确实需要为横向中的每个活动提供不同的布局。

于 2012-10-21T11:24:30.887 回答
0

Android Activity 自动识别布局土地。如果您将同名布局置于 android layout-land 和 Portrait 模式并将此布局加载到您的活动类中,那么 android 会自动识别它。

谢谢。

于 2012-10-21T11:25:22.650 回答