0

私のシナリオでは、スピナーをクリックすると、値のドロップダウンがポップアップし、リストビューのテキスト項目が左に揃えられます。今私が欲しかったのは、テキスト項目を右揃えにする必要があるスピナー値に設定するときにリスト項目から選択した後です。

解決策が見つかりません。

以下は私のスピナーコードです

 ArrayAdapter<String> adapter = new d4ValuesListAdapter(getActivity(),R.layout.spinner_dropdown_item, sVals);

       dynamicSpinner.setAdapter(adapter);

       dynamicSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
           @Override
           public void onItemSelected(AdapterView<?> parent, View view,
                   int position, long id) {


               Log.v("item", (String) parent.getItemAtPosition(position));
               dynamicSpinner.setGravity(Gravity.END);
           }

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

以下は私のアダプターコードです

  public View getCustomView(int position, View convertView, ViewGroup parent) {
   // TODO Auto-generated method stub
   //return super.getView(position, convertView, parent);

   LayoutInflater inflater= ((FragmentChangeActivity) context).getLayoutInflater();
   View row=inflater.inflate(R.layout.spinner_dropdown_item, parent, false);
   TextView label=(TextView)row.findViewById(R.id.spinnervalues);
   label.setText(DayOfWeek[position]);
   sharedPrefrences =getActivity().getSharedPreferences(Constants.PREFERENCE_FILENAME,Activity.MODE_PRIVATE);
   int spinneritem = sharedPrefrences.getInt(Constants.SPINNER_LISTITEM, -1);
   if(spinneritem == position ){
       label.setBackgroundColor(getResources().getColor(R.color.turquise_blue));
       label.setTextColor(getResources().getColor(R.color.white_color));
   }

   return row;
  } 
4

1 に答える 1

0

ドロップ値をフォーマットおよび管理するには、メソッドgetDropDownView()をオーバーライドする必要があります

選択したアイテムの場合、getView ()またはgetContentView()メソッドをオーバーライドする必要があるため、機能します。

于 2016-09-08T03:59:09.003 に答える