更改所选微调器项的文本大小

时间:2012-09-06 07:18:47

标签: java android android-layout android-spinner

我正在访问xml内的一个微调器。并且还使用另一个xml包含一个textview的自定义适配器。现在问题是无法更改所选微调器text.am能够更改列表项的大小通过更改我在样式表中定义的textsize属性在一个微调器内部。页面涉及2个文件,并发布了我在我的应用程序中的所有内容。

样式表:           32sp

Simple_spinner_Item(在适配器中使用):

       <TextView    
        android:id="@+id/spinnerText"      
        android:layout_marginTop="5dp"
        android:layout_marginBottom="5dp"
         android:padding="3dp"
         android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textColor="#ffffff"         
        android:gravity="center_horizontal"/> 

我的页面Xml:

    <Spinner
    android:id="@+id/spin1"
    android:layout_width="500dp"
    android:layout_height="wrap_content"
    android:layout_x="68dp"
    android:layout_y="328dp"/>

我的Java代码:

     public void page2_load()
     {

        Spinner spn1 = (Spinner) findViewById(R.id.spin1);   

         String[] items1 = {"SELECT","01 - I do / myself","02 - Partner / friend        /        parents / other family member","03 - You pay, but claim back all business calls","04 - Business pays for calls","05 - Business pays business calls, you pay personal call","06 - Other","99 - Dont know"};
        ArrayAdapter<String> adapter1 = new  ArrayAdapter<String>this,android.R.layout.preference_category,items1);                         adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spn1.setAdapter(adapter1);
       }

我的问题的任何想法或解决方案?

苏雷什

3 个答案:

答案 0 :(得分:0)

当您创建ArrayAdapter覆盖它的getView(...)方法时,例如

ArrayAdapter<String> adapter = new ArrayAdapter<String>this,ndroid.R.layout.preference_category, items) {
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        TextView textView = (TextView)view.findViewById(android.R.id.title);
        // Do your stuff with that TextView.

        return view.
    }
};

我不太确定getView(...)是否写得正确,你可能需要调试一下。希望这有帮助!

答案 1 :(得分:0)

在微调器事件

中添加它很简单
    spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

        @SuppressLint("ResourceAsColor") @Override
        public void onItemSelected(AdapterView<?> parent, View arg1,
                int arg2, long arg3) {

            ((TextView) rent.getChildAt(0)).setTextColor(getResources().getColor(R.color.white));
            ((TextView) parent.getChildAt(0)).setTextSize(5);



enter code here
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });



}

public void onNothingSelected(AdapterView<?> parent) {

}

};

答案 2 :(得分:-1)

使用以下属性android:textSize="20dp"

Spinner Textview widget中。

或者

您可以从res-> drawable

中抽取