2013-06-18 2 views
2

Я новичок в android..so нужна помощь .. У меня есть xml-страница с белым фоном .. в ней есть прядильщик .. значения заполняются в что spinner после разбора ... но проблема в том, что когда я нажимаю на этот счетчик, цвет текста также белый, а фон этого счетчика также белый. Поэтому текст не отображается. Я хочу, чтобы все элементы счетчика shiuld быть черного color..i есть некоторые темы, но через это только выбранный пункт показывает черный цвет ... нужно ур HLP ... Thnx заранее ..Изменить цвет текста Элементы счетчика, следующие после разбора

ответ

6

Вы должны были реализовать onItemSelected из spinner. Как это:

public class YourActivity_Name extends Activity implements 
    AdapterView.OnItemSelectedListener { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.main); 

    spinner = (Spinner) findViewById(R.id.Spinner1); 

    spinner.setOnItemSelectedListener(this); 

    } 

public void onItemSelected(AdapterView<?> parent, View view, int pos, 
     long id) { 


    ((TextView) parent.getChildAt(0)).setTextColor(Color.BLUE); 

} 

@Override 
public void onNothingSelected(AdapterView<?> arg0) { 
    // TODO Auto-generated method stub 
} 


} 

Обновлено:

Затем вы должны установить элементы в блесны любит это:

ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(
       context, android.R.layout.simple_spinner_item, 
       array_spinner); 
     adapter.setDropDownViewResource(R.layout.simple_selectable_list_item); 
     spinner.setAdapter(adapter); 

simple_selectable_list_item.xml

<?xml version="1.0" encoding="utf-8"?> 
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/textView1" 
android:layout_width="match_parent" 
android:layout_height="?android:attr/listPreferredItemHeight" 
android:textAppearance="?android:attr/textAppearanceListItem" 
android:gravity="center_vertical" 
android:background="?android:attr/listChoiceBackgroundIndicator" 
android:paddingLeft="8dip" 
android:textColor="#ff0000" 
android:paddingRight="8dip" 

/>

+0

только меняет цвет элемента на 1-й позиции .. или только выбранный элемент ... bt Я хочу изменить цвет всех элементов независимо от того, выбрано или нет. –

+0

@Keshri_raj см. Мой ответ на вопрос !!!! – captaindroid

+0

@Keshri_raj дальше вы можете написать свой собственный стиль spinner, как здесь [Style android spinner] (http://stackoverflow.com/questions/13703233/style-android-spinner) – captaindroid

0

Добавить этот макет в папку макета,

Myspi nnerTextview.xml

<?xml version="1.0" encoding="utf-8"?> 
<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    style="?android:attr/spinnerItemStyle" 
    android:layout_width="fill_parent" 


    android:textColor="#000" 

    android:layout_height="wrap_content" 
    android:gravity="center" /> 

И в коде,

spinner=(Spinner)getActivity().findViewById(R.id.district); 

      ArrayAdapter<String> DisAdapter = new ArrayAdapter<String>(
        YourActivity.this, R.layout.MyspinnerTextview, 
        yourarray); 



      DisAdapter 
        .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 



      spinner.setAdapter(DisAdapter); 
+1

только меняет цвет элемента в 1-й позиции .. или выбирается только элемент ... bt Я хочу изменить цвет всех элементов, независимо от того, выбран ли он или нет. –

Смежные вопросы