【问题标题】:ActionBar Drop-down Navigation custom layout styleActionBar 下拉导航自定义布局样式
【发布时间】:2014-04-25 03:02:30
【问题描述】:

如何在我的自定义布局中设置 ActionBar 下拉导航微调器的样式?

另外,如何更改微调器的大小?

我在自定义适配器的 getView() 方法中膨胀自定义布局:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        LayoutInflater mInflater = (LayoutInflater) context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
        convertView = mInflater.inflate(R.layout.list_item_navigation_dropdown, null);
    }

    txtTitle = (TextView) convertView.findViewById(R.id.title);
    txtTitle.setText(spinnerNavItem.get(position).getTitle());
    return convertView;
}

我试图更改 list_item_navigation_dropdown.xml 中的布局大小,但它只会影响微调器的文本值。

【问题讨论】:

    标签: android android-actionbar spinner


    【解决方案1】:

    如何在我的自定义中设置 ActionBar 下拉导航微调器的样式 布局?

    Spinneryou can 主题的唯一部分是通过使用actionDropDownStyle 属性应用您自己的样式的背景。这是一个例子:

    <style name="Your.Theme" parent="@android:style/Theme.Holo.Light">
        <item name="android:actionDropDownStyle">@style/Your.Spinner</item>
    </style>
    
    <style name="Your.Spinner" parent="@android:style/Widget.Holo.Light.Spinner">
        <item name="android:background">@drawable/your_background</item>
    </style>
    

    另外,如何更改微调器的大小?

    我想你是在问如何更改 Spinner 的布局参数,在这种情况下你不能。

    ActionBar 中的Spinner 是使用ScrollingTabContainerView 在内部创建的。默认情况下,宽度设置为LinearLayout.LayoutParams.WRAP_CONTENT,高度设置为LinearLayout.LayoutParams.MATCH_PARENT。但是ActionBar API 中的任何内容都不允许您修改Spinner 的大小。

    另一种方法是使用 ActionBar.setCustomView 并扩展包含您自己的 Spinner 的布局。

    【讨论】:

    • 感谢您提供如此深刻的见解。
    猜你喜欢
    • 2014-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-13
    相关资源
    最近更新 更多