xml

    <Spinner
        android:id="@+id/spinnerSavingName"
        android:layout_width="306dp"
        android:layout_height="34dp" />

 

java > onCreate

  Spinner s1 = (Spinner) findViewById(R.id.spinnerSavingName);
     String[] test= {"test1","test2","test3};
     SpinnerAdapter s1Adapter = new SpinnerAdapter(this,android.R.layout.simple_spinner_item, test);
     s1.setAdapter(s1Adapter);

 

java  > 하단에 추가

    public class SpinnerAdapter extends ArrayAdapter<String> {
        Context context;
        String[] items = new String[] {};
    
        public SpinnerAdapter(final Context context,
                final int textViewResourceId, final String[] objects) {
            super(context, textViewResourceId, objects);
            this.items = objects;
            this.context = context;
        }
    
        /**
         * 스피너 클릭시 보여지는 View의 정의
         */
        @Override
        public View getDropDownView(int position, View convertView,
                ViewGroup parent) {
    
            if (convertView == null) {
                LayoutInflater inflater = LayoutInflater.from(context);
                convertView = inflater.inflate(
                        android.R.layout.simple_spinner_dropdown_item, parent, false);
            }
    
            TextView tv = (TextView) convertView.findViewById(android.R.id.text1);
            tv.setText(items[position]);
            tv.setTextColor(Color.BLUE);
            tv.setTextSize(12);
            tv.setHeight(50);
            return convertView;
        }
    
        /**
         * 기본 스피너 View 정의
         */
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            if (convertView == null) {
                LayoutInflater inflater = LayoutInflater.from(context);
                convertView = inflater.inflate(
                        android.R.layout.simple_spinner_item, parent, false);
            }
    
            TextView tv = (TextView) convertView
                    .findViewById(android.R.id.text1);
            tv.setText(items[position]);
          
            tv.setTextSize(12);
            return convertView;
        }
    }

+ Recent posts