【问题标题】:How to change text size in actionbar dropdown list - with Actionbar Sherlock如何更改操作栏下拉列表中的文本大小 - 使用操作栏 Sherlock
【发布时间】:2012-08-22 09:50:46
【问题描述】:

我正在尝试更改使用 Actionbar Sherlock 4.0 的下拉列表中的字体大小。

我从 [https://github.com/JakeWharton/ActionBarSherlock/issues/401] 看到,您可以使用如下主题更改操作栏选项卡的文本大小:

<style name="Theme.MyTheme" parent="Theme.Sherlock">
    <item name="android:actionBarTabTextStyle">@style/Widget.MyTabText</item>
    <item name="actionBarTabTextStyle">@style/Widget.MyTabText</item>
</style>

<style name="Widget.MyTabText" parent="Widget.Sherlock.ActionBar.TabText">
    <item name="android:textSize">14sp</item>
</style>

但我无法找到如何更改下拉列表中的文本大小(即标题和单个下拉列表项)。

有什么线索吗?谢谢。

【问题讨论】:

    标签: android android-actionbar actionbarsherlock


    【解决方案1】:

    如果您想在单击时看到更大的微调器项目,您可以使用以下代码:

        String[] objects = { "Tehran", "Shiraz",
                "Esfehan" };
        ArrayAdapter<String> ap = new ArrayAdapter<String>(
                this,
                android.R.layout.simple_spinner_dropdown_item,
                objects);
    
        sp.setAdapter(ap);
    

    但如果你想增加微调器中文本的字体,你必须使用自定义数组适配器,使用此链接获取更多信息并设置 textView 的 textSize 以查看更大的微调器项目:Spinner ArrayAdapter crashing with custom layout

    【讨论】:

    • 谢谢。我正在使用 ABS 设计模式,它在 XML 文件中定义了微调器字符串,所以我不太确定如何使用您的想法。我正在尝试使用以下 Themes.xml 文件来解决它(不起作用):
    • 通过电子邮件发送您的项目来解决它,我不知道什么是 ABS 设计。 a.shariat.b@gmail.com
    • ABS = 动作条 Sherlock。我已经处理好了,谢谢你的建议。
    • 感谢您的建议,但我最终没有使用它。
    • 嗨@gcl1,你有什么解决办法吗?我遇到了同样的问题。
    【解决方案2】:

    我查看了 Actionbar Sherlock 的来源,旋转器文本的主题使用 spinnerItemStyle/actionDropDownStyle 但更改没有效果
    但是,它可以在 spinerAdapter 中定义您的自定义布局,如下所示:

        Context context = getSupportActionBar().getThemedContext();
        ArrayAdapter<CharSequence> list = ArrayAdapter.createFromResource(
                context, R.array.orderstatus, R.layout.spinner_item);
        list.setDropDownViewResource(R.layout.spinner_dropdown_item);
        getSupportActionBar().setDisplayShowTitleEnabled(false);
        getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
        getSupportActionBar().setListNavigationCallbacks(list, this);
    

    布局文件在哪里:

        <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/text1"
        style="@style/ActionBar.TitleText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:singleLine="true" />
    

    【讨论】:

      猜你喜欢
      • 2012-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-31
      • 1970-01-01
      相关资源
      最近更新 更多