0

实际上我需要通过代码减小微调器的字体大小,下面是我的代码:

  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);

我创建了一个名为 trytry.xml 的 xml 文件,以便在 ArrayAdapter 中提及,但在 SetContentView 中我提到了 setContentView(R.layout.main); 我很困惑怎么做

我的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>  
4

2 回答 2

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>
于 2012-07-07T12:31:18.563 回答
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); 
}

此外,您不能在微调器定义中添加视图。这给你错误。

微调器标记应该在您的 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"/>    
于 2012-07-07T12:40:11.897 回答