android - How can i change color of selected item in number picker and spinner -


i want change colour of selected text in spinner. there anyway can change boundaries white . same problem number picker want appear color of numbers white either selected or not because text in project white

 package myfyp.pkg.futureadvisor;      import java.util.arraylist;     import java.util.list;     import android.app.activity;     import android.content.intent;     import android.os.bundle;     import android.view.menu;     import android.view.menuitem;     import android.view.view;     import android.widget.arrayadapter;     import android.widget.button;     import android.widget.edittext;     import android.widget.numberpicker;     import android.widget.spinner;     import android.widget.textview;     public class enter_info_activity extends activity {            textview t1,t2,t3;            edittext e1,e2;            button b1;            private spinner spinner2;         @override         protected void oncreate(bundle savedinstancestate) {             super.oncreate(savedinstancestate);             setcontentview(r.layout.enterinfor);             t1=(textview) findviewbyid(r.id.textview1);             t2=(textview) findviewbyid(r.id.programe);             e1=(edittext) findviewbyid(r.id.edittext1);             t3=(textview) findviewbyid(r.id.percentage);             additemsonspinner2();             numberpicker np = (numberpicker) findviewbyid(r.id.np);             np.setminvalue(0);             //specify maximum value/number of numberpicker             np.setmaxvalue(100);             //gets whether selector wheel wraps when reaching min/max value.             np.setwrapselectorwheel(true);              //set value change listener numberpicker               b1 = (button) findviewbyid(r.id.search);             b1.setonclicklistener(new view.onclicklistener() {                  @override                 public void onclick(view v) {                     // todo auto-generated method stub                     intent intenet=new intent(v.getcontext(),list_item.class);                     startactivityforresult(intenet,0);                   }             });            }          public void additemsonspinner2() {                  spinner2 = (spinner) findviewbyid(r.id.spinner2);                 list<string> list = new arraylist<string>();                 list.add("bachelor of architecture");                 list.add("bachelor of business administration");                 list.add("bachelor of commerce");                 list.add("bachelor of computer information systems");                 list.add("bachelor of science in construction technology");                 list.add("bachelor of criminal justice");                 list.add("bachelor of economics");                 list.add("bachelor of education");                 list.add("bachelor of engineering");                 list.add("bachelor of fine arts");                 list.add("bachelor of information systems");                 list.add("bachelor of social work");                 list.add("bachelor of technology");                 list.add("bachelor of accountancy");                 list.add("bachelor of science in aerospace engineering");                 list.add("bachelor of science in architecture");                 list.add("bachelor of science in architectural engineering");                 list.add("bachelor of science in business administration");                 list.add("bachelor of science in business , technology");                 list.add("bachelor of science in chemical engineering");                 list.add("bachelor of science in chemistry");                 list.add("bachelor of science in civil engineering");                 list.add("bachelor of science in computer engineering");                 list.add("bachelor of science in computer science");                 list.add("bachelor of science in criminal justice");                 list.add("bachelor of science in electrical engineering");                 list.add("bachelor of science in engineering technology");                 list.add("bachelor of science in english literature");                 list.add("bachelor of science in environmental science");                 list.add("bachelor of science in history");                 list.add("bachelor of science in human resources management");                 list.add("bachelor of science in industrial engineering");                 list.add("bachelor of science in information technology");                 list.add("bachelor of science in information systems");                 list.add("bachelor of science in information systems");                 list.add("bachelor of science in integrated science");                 list.add("bachelor of science in integrated science");                 list.add("bachelor of science in international relations");                 list.add("bachelor of science in journalism");                 list.add("bachelor of science in manufacturing engineering");                 list.add("bachelor of science in marketing");                 list.add("bachelor of science in mathematics");                 list.add("bachelor of science in mechanical engineering");                 list.add("bachelor of science in mining engineering");                 list.add("bachelor of science in software engineering");                 list.add("bachelor of science in physics");                 list.add("bachelor of science in politics");                 list.add("bachelor of science in psychology");                 list.add("bachelor of science in real-time interactive simulation");                 list.add("bachelor of science in religion");                 list.add("bachelor of science in risk management , insurance");                 list.add("bachelor of science in science education");                 list.add("bachelor of science in systems engineering");                 list.add("bachelor of science in veterinary technology");                  arrayadapter<string> dataadapter = new arrayadapter<string>(this,                     android.r.layout.simple_spinner_item, list);                 dataadapter.setdropdownviewresource(android.r.layout.simple_spinner_dropdown_item);                 spinner2.setadapter(dataadapter);               }            @override         public boolean oncreateoptionsmenu(menu menu) {             // inflate menu; adds items action bar if present.             getmenuinflater().inflate(r.menu.main_activity1, menu);              return true;         }          @override         public boolean onoptionsitemselected(menuitem item) {             // handle action bar item clicks here. action bar             // automatically handle clicks on home/up button, long             // specify parent activity in androidmanifest.xml.             int id = item.getitemid();             if (id == r.id.aboutusid) {                 intent aboutusintent = new intent(this,aboutus_activity.class);                  startactivity(aboutusintent);                 return true;             }             else if (id == r.id.helpid) {                 intent helpintent = new intent(this,help_activity.class);                  startactivity(helpintent);                 return true;             }             else if (id == r.id.homeid) {                 intent mainintent = new intent(this,mainactivity.class);                  startactivity(mainintent);                 return true;}             else if (id == r.id.exitid) {                  finish();                 system.exit(0);              }              else if (id == r.id.exitid) {                  return false;             }             return super.onoptionsitemselected(item);         }     } 

you can in layout adapter colorstatelist. can create colorstatelist using xml in color resource folder so:

<?xml version "1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android/com/apk/res/android">     <item android:state_checked="true" android:color="?attr/coloraccent"/>     <item android:state_selected="true" android:color="?attr/coloraccent"/>     <item android:state_pressed="true" android:color="?attr/coloraccent"/>     <item android:state_activated="true" android:color="?attr/coloraccent"/>     <item android:color="?android:attr/textcolorprimary"/> </selector> 

then can create layout using colorstatelist (i use here text color, can set attribute can use color resource):

<textview xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="match_parent" android:layout_height="wrap_content"     android:padding="16dp" android:textsize="16sp"     android:textcolor="@color/selector_accent"/> 

lastly, set layout drop down view resource:

dataadapter.setdropdownviewresource(r.layout.view_selectable); 

as numberpicker, doesn't there standard way set layout, should able change color of text, based on this answer. set text color using colorstatelist:

edittext.settextcolor(contextcompat.getcolorstatelist(this, r.color.selector_accent)); 

Comments