android - 如何为自定义微调器设置默认标题?

标签 android header spinner default title

我有一个微调器,其中包含一些来自 SQLite 数据库的值。当我开始 Activity 时,我想显示微调器的标题“--选择类别--”而不是适配器中的数据。我该怎么做?

String[] data = ndbHandler.getAllLabels();

adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, data);


        // Drop down layout style - list view with radio button
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        // attaching data adapter to spinner

        spinCat.setAdapter(adapter);

这是ndbHandler数据库类

public String[] getAllLabels(){
    Cursor cr=this.sDB.query(TABLE_LABELS, new String[] {KEY_NAME}, null, null, null, null, null);

    if(cr.getCount() >0)
    {
        String[] str = new String[cr.getCount()];
        int i = 0;


        while (cr.moveToNext())
        {
             str[i] = cr.getString(cr.getColumnIndex(KEY_NAME));
             i++;
         }
    return str;

}


    else
    {
        return new String[]{};
    }

最佳答案

您必须在字符串数组或数组列表的第一个位置添加“选择类别”字符串。在将其设置为微调器之前。

String[] SpinnerItem=new String[]{"Select Category","First","Second","Third"};

对于ArrayList-

ArrayList<String> mArrayList=new ArrayList<String>();

mArrayList=getDataFromSqlite();// retrieve your data first.
mArrayList.add(0,"Select Category");

你的数据库代码-

public ArrayList<String> getAllLabels(){
ArrayList<String> mArrayList=new ArrayList<String>();

    Cursor c=this.sDB.query(TABLE_LABELS, new String[] {KEY_NAME}, null, null, null, null, null);

if(c != null){
            if (c.moveToFirst()){
                do{
                     mArrayList.add(cr.getString(cr.getColumnIndex(KEY_NAME)));
                }while(c.moveToNext());
            }
        }

    return mArrayList;

}

设置微调器-

ArrayList<String> data = ndbHandler.getAllLabels();
data.add(0,"Select Category");

adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, data);


        // Drop down layout style - list view with radio button
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        // attaching data adapter to spinner

        spinCat.setAdapter(adapter);

关于android - 如何为自定义微调器设置默认标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27540210/

相关文章:

android - Glide - 如何在runnable中获取位图

java - 添加Web服务引用到eclipse

c - Linux redhat 内核头文件

android - 如何在微调器上创建链接? - 安卓

android - Volley 无法创建缓存目录。无法清理文件

android - 在实现 parcelable 的 Activity 之间发送对象

wcf - 以编程方式将自定义 WCF header 添加到终结点以实现可靠 session

android - 如何使用 iText 库在动态 pdf 中添加页眉和页脚?

Android spinner dialogMode 样式

android - 如何知道 Spinner 是否显示或不再显示