gpt4 book ai didi

Android 2.2 Spinner 在 Actionbar 中看起来很旧

转载 作者:太空狗 更新时间:2023-10-29 16:06:21 26 4
gpt4 key购买 nike

在 Android 2.2 上,我的 ActionBar 中的 Spinner 看起来非常丑陋,下拉文本颜色与背景颜色相同。这使得文本不可读。

enter image description here

这是相关代码。

spinner = new Spinner(getSupportActionBar().getThemedContext());
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>
(
getSupportActionBar().getThemedContext(),
R.layout.sherlock_spinner_dropdown_item,
new String[]{"All", "Solved", "Unsolved"}
);
spinner.setAdapter(spinnerArrayAdapter);

Edit: I have added the below 3 lines for completeness.

menu.add("Display")
.setActionView(spinner)
.setShowAsAction(MenuItem.Show_AS_ACTION_ALWAYS);

这是它在 Android 4.2 上的样子。这也是我希望它在 Android 2.2 上的样子。

enter image description here

最佳答案

当你创建SpinnerArrayAdapter时,你应该使用R.layout.sherlock_spinner_item;那么您应该在适配器上调用 setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item)。请注意这两个资源名称之间的区别。

来自示例代码:

Context context = getSupportActionBar().getThemedContext();
ArrayAdapter<CharSequence> list = ArrayAdapter.createFromResource(context, R.array.locations, R.layout.sherlock_spinner_item);
list.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);

对于您的代码,这将是:

spinner = new Spinner(getSupportActionBar().getThemedContext());
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>
(
getSupportActionBar().getThemedContext(),
R.layout.sherlock_spinner_item,
new String[]{"All", "Solved", "Unsolved"}
);
spinnerArrayAdapter.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);

关于Android 2.2 Spinner 在 Actionbar 中看起来很旧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13637270/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com