2015年5月15日 星期五

Spinner調整字型大小

在Spinner上,並無法直接設定TextSize大小,所以則可以透過一個小技巧去設定TextSize大小

1、設定一個xml檔(spinner_style.xml)

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/spnStyle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    style="?android:attr/spinnerDropDownItemStyle"
    android:textSize="25sp">
</TextView>
其中android:textSize即可設定fnot size

2、若Spinner數據來源為XML

ArrayAdapter typeAdapter1 = ArrayAdapter.createFromResource(this, 
            R.array.sex_list, R.layout.spinner_style); 
typeAdapter1.setDropDownViewResource(R.layout.spinner_style);
this.spnSex.setAdapter(typeAdapter1);
也可以偷懶直接從Spinner上getAdapter再進行轉型而去設定ViewResource來源

ArrayAdapter typeAdapter2 = (ArrayAdapter)this.spnSex.getAdapter();//直接轉型成ArrayAdapter
typeAdapter2.setDropDownViewResource(R.layout.spinner_style);//將Resource指向自定的Spinner Style
this.spnSex.setAdapter(typeAdapter2);


3、數據來源若是動態產生時,則用以下方式

private static final String[] sex_group={"男","女"};
ArrayAdapter adapter = new ArrayAdapter(this,R.spinner_style.myspinner,sex_group);
this.spnSex.setAdapter(adapter);

沒有留言:

張貼留言