【问题标题】:Android: how to give alternate colors to the spinner itemsAndroid:如何为微调器项目提供替代颜色
【发布时间】:2013-02-25 18:37:38
【问题描述】:

我有一个带有以下物品的微调器

ArrayAdapter<Message> arrayadapter = new ArrayAdapter<Message>(activity, android.R.layout.simple_spinner_item, messages);
                arrayadapter.setDropDownViewResource(R.layout.textview);

我想为列表项提供替代颜色。我该怎么做。感谢任何帮助

【问题讨论】:

  • 您需要创建一个CustomDialog,其中包含ListView,其作用类似于 Spinner。
  • @ChintanRathod 你能举一些例子或链接吗
  • 你需要创建一个自定义的Adapter并覆盖getView()方法而不是ArrayAdapter
  • 你知道如何用CustomAdapter创建一个ListView吗?和自定义对话框?

标签: android android-spinner


【解决方案1】:

你可以使用

ArrayAdapter<CharSequence> adapter =
    new ArrayAdapter(this, R.layout.simple_spinner_item, myList) {
    @Override
    public View getDropDownView(int position, View convertView, ViewGroup parent) {
        View view = super.getDropDownView(position, convertView, parent);
        if (position % 2 == 0) { // we're on an even row
           view.setBackgroundColor(evenColor);
        } else {
           view.setBackgroundColor(oddColor);
        }
       return view;
    }
}

【讨论】:

    【解决方案2】:
    【解决方案3】:

    您好可以使用以下代码

     @Override
           public View getDropDownView(int position, View convertView, ViewGroup parent){
                View v = convertView;
                if (v == null) {
                   Context mContext = this.getContext();
                   LayoutInflater vi = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                v = vi.inflate(R.layout.row, null);
             } 
        TextView tv=(TextView) v.findViewById(R.id.spinnerTarget);
        tv.setText(testarray.get(position));
        switch (position) {
        case 0:  tv.setTextColor(Color.RED);  
        break; 
        case 1:  tv.setTextColor(Color.BLUE);
        break;
        default:  tv.setTextColor(Color.BLACK);
        break;
        }
    return v;  
                  }              
           };     
           pSpinner.setAdapter(spinnerAdapter); 
    } 
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 2011-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-30
    • 1970-01-01
    相关资源
    最近更新 更多