Posted at

Sppinerのテキストを右寄せにしたい Android

More than 3 years have passed since last update.

AndroidのSpinnerのテキストを右寄せにしたがったが、うまくいかなかった。

gravityをRight

TextAlignmentをgravity

としたらできそうだがならない。

なんでじゃ!と思い、調べると以下のサイトを発見。

http://nevescheng.blogspot.jp/2013/05/spinner-with-item-text-aligned-to-center.html

どうも中のTextViewに対してgravityをセットしなくちゃいけないみたい。

というわけで、以下のようなコードに変更。

ArrayAdapter<String> adapter = new ArrayAdapter<String>( spinner.getContext(), android.R.layout.simple_spinner_item){

// テキストの位置
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
((TextView) v).setGravity(Gravity.RIGHT);
return v;
}

// 選択肢の位置
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View v = super.getDropDownView(position, convertView,parent);
((TextView) v).setGravity(Gravity.CENTER);
return v;
}
};

これで、Spinnerのテキストの右寄せできました。

やったね!!