如何设置spinner文本框中的字体颜色,请高手指点

解决方案 »

  1.   

    在res/layout目录下,可对下拉菜单的TextView进行设置!
      

  2.   

    可以引用drawable颜色常数,更改它的颜色!Resource resource =getBaseContext().getResource();
    Drawable HippoDrawable =resources.getDrawable(R.drawable.white);
    mtextview.setBackgroundDrawable(HippoDrawable);mtextView.setTextColor(Color.black);
      

  3.   

    是在xml文件的spinner标签内设置吗?还是在哪里设置?我在spinner标签里面设置好像不太好使。
      

  4.   

    你的意思是你在spinner里面选择一个内容,然后把它显示在一个单独的文本框里面?那你直接在文本框的属性里面设置就可以了!
    还是你选中内容显示在spinner的第一个位置的颜色?
      

  5.   

    是我选中内容显示在spinner的第一个位置的颜色,不知道怎么做,试了几种方法不是太行
      

  6.   


     // 字体颜色
                    Spinner selection_text_color = (Spinner) findViewById(R.id.spinner1);                ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                                    android.R.layout.simple_spinner_item, mTextColorNames);
                    adapter
                                    .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                    selection_text_color.setAdapter(adapter);                // 获取默认(上次用户设置好的)字体颜色,默认黑色
                    // TODO: 要处理一个情况,比如配置文件里面的颜色不在这个选择数组里面
                    int default_text_color = mPreference.getInt("text_color", Color.BLACK);
                    Log.d(TAG, "Default color " + default_text_color);
                    int default_text_color_index = 0;
                    // assert mColorCodes.length == mColorNames.length
                    for (int i = 0; i < mTextColorCodes.length; ++i) {
                            if (mTextColorCodes[i] == default_text_color) {
                                    default_text_color_index = i;
                                    Log.d(TAG, "color index " + i);
                            }
                    }
                    selection_text_color.setSelection(default_text_color_index);                // 设置状态栏下拉菜单监听器
                    selection_text_color.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {                        public void onItemSelected(AdapterView parent, View v,
                                            int position, long id) {
                                    t.setTextColor(mTextColorCodes[position]);
                                    //mView.setTextColor(mTextColorCodes[position]);
                                    mPreferenceEditor.putInt("text_color", mTextColorCodes[position]);
                                    mPreferenceEditor.commit();
                            }                        public void onNothingSelected(AdapterView<?> arg0) {
                            }
                    });
                    // 字体大小
                    Spinner selection_font_size = (Spinner) findViewById(R.id.spinner2);                ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
                                    android.R.layout.simple_spinner_item, mFontSizeNames);
                    adapter1
                                    .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                    selection_font_size.setAdapter(adapter1);
                    // 设置默认选取, 默认18
                    int default_font_size = mPreference.getInt("font_size", 18);
                    Log.d(TAG, "Default font_size " + default_font_size);
                    int default_font_size_index = 0;
                    // assert mFontSizeCodes.length == mFontSizeNames.length
                    for (int i = 0; i < mFontSizeCodes.length; ++i) {
                            if (mFontSizeCodes[i] == default_font_size) {
                                    default_font_size_index = i;
                                    Log.d(TAG, "font size " + i);
                            }
                    }
                    selection_font_size.setSelection(default_font_size_index);                // 设置状态栏下拉菜单监听器
                    selection_font_size.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {                        public void onItemSelected(AdapterView parent, View v,
                                            int position, long id) {                                t.setTextSize(mFontSizeCodes[position]);
                                    t.setText("the Text         fontsize is " + mFontSizeCodes[position] + "!");
                                    //mView.setTextSize(mFontSizeCodes[position]);
                                    mPreferenceEditor.putInt("font_size", mFontSizeCodes[position]);
                                    mPreferenceEditor.commit();
                            }                        public void onNothingSelected(AdapterView<?> arg0) {
                            }
                    });                // --------------------------------------------------                // 字体背景颜色
                    Spinner s2 = (Spinner) findViewById(R.id.spinner3);
                    final LinearLayout y = (LinearLayout) findViewById(R.id.content5);
                    ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(this,
                                    android.R.layout.simple_spinner_item, mBackgroundColorNames);
                    adapter2
                                    .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                    s2.setAdapter(adapter2);                // TODO: 要处理一个情况,比如配置文件里面的颜色不在这个选择数组里面
                    int default_Background_color = mPreference.getInt("Background_color",
                                    Color.WHITE);
                    Log.d(TAG, "Default color " + default_Background_color);
                    int default_Background_color_index = 0;
                    // assert mColorCodes.length == mColorNames.length
                    for (int i = 0; i < mBackgroundColorCodes.length; ++i) {
                            if (mBackgroundColorCodes[i] == default_Background_color) {
                                    default_Background_color_index = i;
                                    Log.d(TAG, "color index " + i);
                            }
                    }
                    s2.setSelection(default_Background_color_index);                // 设置状态栏下拉菜单监听器
                    s2.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {                        public void onItemSelected(AdapterView parent, View v,
                                            int position, long id) {
                                    /*
                                     * switch(position){ case 0:{ t.setBackgroundColor(Color.WHITE);
                                     * mView.setBackgroundColor(Color.WHITE); break; } case 1:{
                                     * t.setBackgroundColor(Color.BLUE);
                                     * mView.setBackgroundColor(Color.BLUE); break; } case 2:{
                                     * t.setBackgroundColor(Color.RED);
                                     * mView.setBackgroundColor(Color.RED); break; } case 3:{
                                     * t.setBackgroundColor(Color.BLACK);
                                     * mView.setBackgroundColor(Color.BLACK); break; } case 4:{
                                     * t.setBackgroundColor(Color.YELLOW);
                                     * mView.setBackgroundColor(Color.YELLOW); break; } }
                                     */
                                    t.setBackgroundColor(mBackgroundColorCodes[position]);
                                    //mView.setBackgroundColor(mBackgroundColorCodes[position]);
                                    mPreferenceEditor.putInt("Background_color",
                                                    mBackgroundColorCodes[position]);
                                    mPreferenceEditor.commit();
                            }                        public void onNothingSelected(AdapterView<?> arg0) {
                            }
                    });        }
      

  7.   

    mPreference,mFontSizeCodes具体的实现代码有吗?
      

  8.   

    瞎了 这明明是设置view的背景颜色。。跟spinner字体颜色有神马关系
      

  9.   

    ,学习。
    有点疑问:
    zhq56030207
     
    (Hello_Miss) 你怎么写代码,就跟逛街一样,如此随意?
    我无比的纠结!
      

  10.   


    不知道LZ是不是要这样的效果?
    参考地址:
    http://www.eoeandroid.com/thread-61780-1-1.html
    他是使用android.R.preference_category来设置Adapter的样式的
      

  11.   

    在下面函数中添加2行即可
    onItemSelected(AdapterView parent, View v,
                                            int position, long id) {
     TextView v1 = (TextView)v;
     v.setTextColor(Color.WHITE); //可以随意设置自己要的颜色值
     
    }
      

  12.   

    上贴有笔误,请这样:
    在下面函数中添加2行即可
    onItemSelected(AdapterView parent, View v,
      int position, long id) {
     TextView v1 = (TextView)v;
     v1.setTextColor(Color.WHITE); //可以随意设置自己要的颜色值
     
    }
      

  13.   

    这个哥们说的很对!
    要修改非弹出状态下Spinner中文字的颜色则:给Spinner设置一个OnItemSelectedListener,然后再onItemSelected方法中做如下的操作!