アイテムが別のスピナーから選択されたときに、AppCompatSpinnerのテキストの色を変更する必要があります。カテゴリアダプタの別のSpinnerアイテムを選択したときのSpinnerのテキストカラーの変更
AppCompatSpinner(categorySpinner)
AppCompatSpinner(fromSpinner)
categorySpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
//Setting the upper adapter according to the category.
lengthAdapter = new SpinnerAdapter(getApplicationContext(), lengthList);
lengthAdapter.setDropDownViewResource(R.layout.item_dd_r);
fromSpinner.setAdapter(lengthAdapter);
//Need to add code to change the Text Color of fromSpinner.
...
}
CategorySpinnerAdapter adapter = new CategorySpinnerAdapter(this, categoriesList);
adapter.setDropDownViewResource(R.layout.cat_dd_r);
categorySpinner.setAdapter(adapter);
コード -
パブリッククラスCategorySpinnerAdapterはArrayAdapter {
private Context context;
private List<String> categoryItemList;
public CategorySpinnerAdapter(Context context, List<String> categoryItemList) {
super(context, 0, categoryItemList);
this.context = context;
this.categoryItemList = categoryItemList;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
String item = categoryItemList.get(position);
View view = convertView;
if (view == null) {
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.spinner_item_convert_cat, parent, false);
}
TextView spinnerText = view.findViewById(R.id.textView_spinnerItem_cat);
spinnerText.setText(item);
return view;
}
@Override
public View getDropDownView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
TextView dropDownText = (TextView) super.getDropDownView(position, convertView, parent);
return dropDownText;
}
}
を拡張
の項目を選択する上で
secondSpinner
のテキストの色を変更する方法ですあなたが達成したいのかに関するいくつかのスクリーンショットを添付してください? – Mandy8055