我有一个有一些价值的旋转器
| Monday |
| Thuesday |
| Wednesday |
| Thursday |
| Friday |
| Saturday |
| USER DEFINED |
当用户选择user Defined
时,他可以在对话框中输入一个自定义值,假设我得到的值是字符串userdef=“your choice”
。
我需要设置这个字符串为当前项目,而不改变旋转器选择列表,必须出现上述相同的描述,也当用户再次点击旋转器,类似于在谷歌分析Android应用程序,看到图像。
我怎么能这么做?
实现这一点的关键细节是,spinner
使用的spinneradapter
接口有两个不同但相关的方法:
getview()
-创建显示在旋转器本身中的视图。getDropDownView()
-创建下拉弹出窗口中显示的视图。因此,要使一个项目在弹出窗口中与在旋转器本身中显示不同,您只需要以不同的方式实现这两种方法。根据代码的具体情况,细节可能会有所不同,但一个简单的示例如下:
public class AdapterWithCustomItem extends ArrayAdapter<String>
{
private final static int POSITION_USER_DEFINED = 6;
private final static String[] OPTIONS = new String[] {
"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Custom..." };
private String mCustomText = "";
public AdapterWithCustomItem(Context context){
super(context, android.R.layout.simple_spinner_dropdown_item, OPTIONS);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
if (position == POSITION_USER_DEFINED) {
TextView tv = (TextView)view.findViewById(android.R.id.text1);
tv.setText(mCustomText);
}
return view;
}
public void setCustomText(String customText) {
// Call to set the text that must be shown in the spinner for the custom option.
mCustomText = customText;
notifyDataSetChanged();
}
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
// No need for this override, actually. It's just to clarify the difference.
return super.getDropDownView(position, convertView, parent);
}
}
mAdapter.setCustomText("This is displayed for the custom option");
由于您只是重写getview()
方法,下拉显示的文本与选项本身定义的文本相同。
问题内容: 我想更改数据库表的列位置而不丢失数据。 例如: 当前表: 到 问题答案: 试试这个:
我想在不丢失数据的情况下更改数据库表的列位置。 例如: 当前表格: 到
虽然我的问题主题似乎是许多PDF操作包和工具都支持的特性,但我需要明确指出,我不想旋转PDF。 我有一个PDF,它显示了一个纵向(A4),尺寸为WxH 297x210(A4旋转)。 现在,我需要实现的是,这个PDF有横向方向,同时保留尺寸。 我不确定这需要我做什么。 如果我使用Adobe Illustrator将文档格式更改到所需的位置,我还需要旋转内容。如果我将此页面放入设计糟糕的PDF中,此页
我有一堆CSV文件,它们是作为数据流读取的。对于每个dataframe,我希望更改一些列名,如果某个dataframe中存在特定列: column_name_update_map={'aa':'xx';'bb':'yy'}
出于某种原因,我的旋转器中选定项的文本颜色为白色。以下是活动的代码: 下面是simple_spinner_item的XML: 下拉项显示为红色,但不显示所选项。我试图将XML中的textColor更改为selector:并创建了这个选择器: 但是所选项目的文本颜色仍然是白色。所以我尝试在OnItemSelectedListener中这样做: 还是白色的... 为什么会发生这种情况,我如何修复它?谢
问题内容: 我想在字体为时使用光标。 那可能吗? 问题答案: 您可以定制一个。