我正在尝试在使用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>
但是我无法找到如何在下拉列表中更改文本大小(即标题和单个下拉列表项)。
任何线索?感谢。
答案 0 :(得分:0)
如果您想在点击它时看到更大的微调器项目,您可以使用以下代码:
String[] objects = { "Tehran", "Shiraz",
"Esfehan" };
ArrayAdapter<String> ap = new ArrayAdapter<String>(
this,
android.R.layout.simple_spinner_dropdown_item,
objects);
sp.setAdapter(ap);
但是如果你想在spinner中增加文本字体,你必须使用自定义arrayadapter,使用此链接获取更多信息,并设置textView的textSize以查看更大的微调项:Spinner ArrayAdapter crashing with custom layout
答案 1 :(得分: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" />