使用新的v7操作栏兼容性库时,旧设备的样式出现问题。所有样式都搞砸了,例如我正在使用列表导航,而控制导航的微调器具有默认微调器的圆圈

这是在API 10上的样子:



而这是在API 17上的样子:



如何获得匹配的样式?

最佳答案

我也一直在处理这个问题。关于如何使用appcompat库使列表导航模式向后兼容的文档尚不十分清楚。这是您应该如何初始化它的方法:

    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            getSupportActionBar().getThemedContext(), R.array.my_list_of_items,
            R.layout.support_simple_spinner_dropdown_item);

    getSupportActionBar().setListNavigationCallbacks(adapter, this);


注意,我使用了getSupportActionBar()。getThemedContext()来获取适当的样式。但这还不够。您还需要使用正确的支持布局:


R.layout.support_simple_spinner_dropdown_item。


只有这样,您才能摆脱Honeycomb之前的Android版本上的单选按钮图像。

10-07 19:36