适配器的不同版本在风景/画象

时间:2014-12-29 08:42:22

标签: android android-layout android-adapter

我必须开发一个Activity来显示一个项目列表。 在肖像中,我必须在横向4项中的单行中显示3个项目。

实施此解决方案的最佳方式是什么?

3 个答案:

答案 0 :(得分:2)

您必须再创建一个layout res/layout-land,并且必须在xml中为folder中的相应设计创建相同的landscape mode。您可以根据需要在每个views文件中添加xml。因此,根据要求orientation change,它将从相应的文件夹中选择您的相应设计。

检查图像以获取更多详细信息enter image description here

注意:此frgtpw.xml文件夹中都存在Layout

更多信息请点击此处:)

答案 1 :(得分:0)

提供带有相同名称的拖曳布局,但其中一个包含3个元素,另一个包含4个元素。将其中一个放在layout-port中,将另一个放在layout-land中。然后在你的适配器中找到4个元素并为这些元素设置值但是对于第四个项目只检查它是否为null,如果它为null则表示它是肖像,否则它表示横向。

答案 2 :(得分:0)

在适配器实现中,您可以定义为

@Override
public View getView(int position, View convertView, ViewGroup parent) {

    if (convertView == null) {
       if(isPortrait){
          convertView = LayoutInflater.from(getContext()).inflate(R.layout.portrait_layout, parent, false);
       }else{
          convertView = LayoutInflater.from(getContext()).inflate(R.layout.lanscape_layout, parent, false);
       }

     }


   }