1

我正在尝试更改使用 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>

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

有什么线索吗?谢谢。

4

2 回答 2

0

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

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

    sp.setAdapter(ap);

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

于 2012-05-30T19:15:11.243 回答
0

我查看了 Actionbar Sherlock 的来源,spiner 文本的主题使用 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-08-22T01:50:46.750 回答