1

如何修改Android Honeycomb應用程序中微調器上選定項目的文本顏色?修改顏色Android selected Dropdown item

編輯: 我有一個微調佈局,我正在充氣。是否可以在此微調器中添加一個屬性來更改文本顏色?我能夠改變背景,例如使用微調控制器上的android:background,但是我無法對android:textColor執行相同的操作。

+0

看看這個好貼[更改Android Spinner中物品的文字顏色] [1] [1]:http://stackoverflow.com/questions/5836254/android-change-text-color-of-items-in-spinner – mH16

回答

3

我用這個代碼的ListView adaper:

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 

     View rowView; 
     EntSaleDocumentDetails entSaleDocumentDetails = getItem(position); 

     if (convertView == null) { 
      LayoutInflater inflator = (LayoutInflater) getContext() 
        .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      rowView = inflator.inflate(R.layout.myLayout, 
        null); 
     } else { 
      rowView = (View) convertView; 
     } 


     TextView myTv= (TextView) rowView 
       .findViewById(R.id.tvCode); 

     myTv.setTextSize(16); 

     //.... 

     // set selected item 
     LinearLayout ActiveItem = (LinearLayout) rowView; 
     if (position == selectedItem) 
     { 
      ActiveItem 
        .setBackgroundResource(R.drawable.background_dark_blue); 
     } 
     else 
     { 
      ActiveItem 
        .setBackgroundResource(R.drawable.border02); 
     } 
     //.... 
} 

public void setSelectedItem(int position) { 
     selectedItem = position; 
    } 

您的自定義佈局:

<?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="fill_parent" 
    android:layout_gravity="right" 
    android:background="@drawable/border02" 
    android:gravity="right" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/linearLayout1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/back_color_selector03" 
     android:gravity="right" > 

     <TextView 
      android:id="@+id/tvName" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="bottom|right" 
      android:gravity="right" 
      android:text="TextView" > 
     </TextView> 

     <TextView 
      android:id="@+id/tvCode" 
      android:layout_width="100dip" 
      android:layout_height="wrap_content" 
      android:gravity="right" 
      android:text="TextView" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/llProductDetails" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/back_color_selector_blue_simple" > 

     <ImageButton 
      android:id="@+id/btnProductDetails" 
      android:layout_width="40dip" 
      android:layout_height="40dip" 
      android:src="@drawable/prd_details" /> 

     <TableLayout 
      android:id="@+id/tblProductDetails" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="right" > 

      <TableRow 
       android:id="@+id/tableRow1" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:gravity="right" > 

       <TextView 
        android:id="@+id/tvQty" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:gravity="right" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvLblQty" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvStockQty" 
        android:layout_width="100dip" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvLblStockQty" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 
      </TableRow> 

      <TableRow 
       android:id="@+id/tableRow2" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:gravity="right" > 

       <TextView 
        android:id="@+id/tvMablagh" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:gravity="right" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvLblMablagh" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvFee" 
        android:layout_width="100dip" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 

       <TextView 
        android:id="@+id/tvLblFee" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="right" 
        android:gravity="right" 
        android:paddingLeft="20dip" 
        android:text="TextView" 
        android:textColor="@color/darkText" /> 
      </TableRow> 
     </TableLayout> 
    </LinearLayout> 

</LinearLayout> 

和活動:

@Override 
    protected void onListItemClick(ListView parent, View view, int position, 
      long id) { 
     super.onListItemClick(parent, view, position, id); 
     adapter.setSelectedItem(position); 
     myListView.invalidateViews(); 
    } 
+0

我有一個微調佈局,我正在充氣。是否可以在此微調器中添加一個屬性來更改文本顏色?我能夠改變背景,例如使用微調控制器上的android:background,但是我無法對android:textColor執行相同的操作。 –

+0

定義您自己的佈局。得到這樣的TextView:rowView.findViewById(...)並設置你的顏色 – breceivemail

+0

我編輯我的代碼 – breceivemail