简体   繁体   中英

How to center simple_spinner_dropdown_item in Android Studio?

I want to center the text of my simple_spinner_dropdown_item element, so I got this solution:

private void addCountriesToSpinner(){
    DatabaseHelper dhHelp = new DatabaseHelper(this);
    _countryNames = dhHelp.getAllCountryNames();

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, _countryNames){
        @Override
        public View getView(int position, View convertView, ViewGroup parent){
            return setCentered(super.getView(position, convertView, parent));
        }

        @Override
        public View getDropDownView(int position, View convertView, ViewGroup parent){
            return setCentered(super.getDropDownView(position, convertView, parent));
        }

        private View setCentered(View view){
            TextView textView = (TextView)view.findViewById(android.R.id.text1);
            textView.setGravity(Gravity.CENTER);
            textView.setTextSize(18);
            return view;
        }
    };

However, this is just working for the simple_spinner_item where all the dropdown items are way to tight. But when ever I replace it by simple_spinner_dropdown_item the centering is no longer working.

I guess the answer lies in this line, but I dont know how to adapt:

TextView textView = (TextView)view.findViewById(android.R.id.text1);

Thanks!

在您声明<Spinner>...</Spinner>元素的 XML 文件中,尝试添加此属性(到微调器):

 android:gravity="center"

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM