实际上我需要通过代码减少微调器的字体大小,下面是我的代码:
Spinner spiner2 = (Spinner) findViewById(R.id.Spinner2);
List<String> list = new ArrayList<String>();
list.add("list 1");
list.add("list 2");
list.add("list 3");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,android.R.layout.trytry,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spiner2.setAdapter(dataAdapter);
我在ArrayAdapter中创建了一个名为trytry.xml的xml文件,但在SetContentView中我提到了setContentView(R.layout.main);我很困惑怎么做
my trytry xml包含:
<?xml version="1.0" encoding="utf-8"?>
<Spinner xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:text="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18dp">
</TextView>
</Spinner>
答案 0 :(得分:0)
将sp
用于测试尺寸android:textSize="18sp"
使用此代码
public class AndroidCustomSpinner extends Activity {
String[] DayOfWeek = {"Sunday", "Monday", "Tuesday",
"Wednesday", "Thursday", "Friday", "Saturday"};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Spinner mySpinner = (Spinner)findViewById(R.id.spinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.row, R.id.weekofday, DayOfWeek);
mySpinner.setAdapter(adapter);
}
}
row.xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/weekofday"
android:layout_width="wrap_content"
android:textSize="18sp
android:layout_height="wrap_content"/>
</LinearLayout>
答案 1 :(得分:0)
有几个问题正在发生。
首先,当您创建自己的布局时,它不应以android
为前缀。这是为框架附带的布局保留的。对于您自己的布局,它应该是R.id.trytry
。
其次,您需要将布局设置为关闭状态(在对适配器的初始调用中)和下拉资源(如果您希望它在打开时看起来相同)。
看起来应该是这样的:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); // Set the layout for the whole screen
// Other code here
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,R.layout.trytry,list);
dataAdapter.setDropDownViewResource(R.layout.trytry);
}
此外,您无法在微调器定义中添加视图。这给你错误。
spinner标签应该在你的main.xml中,如下所示:
<Spinner
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
然后你的trytry.xml应该是这样的:
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:text="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18dp"/>