0

我有一个 MultiAutoCompleteTextView,我在其上设置了一个自定义适配器。现在,这个适配器将显示一个选项列表供用户在用户输入一些文本时从中选择。

这在纵向模式下工作正常。但是在横向中,我不希望此适配器显示任何视图(选项列表)。我不想卸下适配器。

我已经尝试将视图设置为 GONE。并尝试将计数设置为 0,以便它根本不会显示视图,但由于这个原因,数据本身已经消失,这是不应该发生的。

如何让适配器加载数据但停止以横向模式显示视图?

4

1 回答 1

0

您可以像这样继承 ArrayAdapter。

public class MyArrayAdapter<T> extends ArrayAdapter<T> {

    public MyArrayAdapter(Context context, int resource, int textViewResourceId, List<T> objects) {
        super(context, resource, textViewResourceId, objects);
        // TODO Auto-generated constructor stub
    }

    @Override
    public int getCount() {
        if(isLandscapeMode())
            return 0;
        return super.getCount();
    }

    public boolean isLandscapeMode()
    {
        DisplayMetrics metrics = getContext().getResources().getDisplayMetrics();
        return metrics.xdpi > metrics.ydpi;
    }

}
于 2012-08-09T11:41:51.650 回答