简体   繁体   English

如何在 Android Studio 中居中 simple_spinner_dropdown_item?

[英]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:我想将我的simple_spinner_dropdown_item元素的文本居中,所以我得到了这个解决方案:

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.但是,这仅适用于所有下拉项目都很紧的simple_spinner_item But when ever I replace it by simple_spinner_dropdown_item the centering is no longer working.但是,当我用simple_spinner_dropdown_item替换它时,居中不再起作用。

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"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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