展会信息港展会大全

Android修改系统自带Spinner字体大小和颜色的完整示例
来源:互联网   发布日期:2015-10-02 15:59:01   浏览:1709次  

导读:MainActivity如下: package cc.test; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget...

MainActivity如下:

package cc.test;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.AdapterView;

import android.widget.ArrayAdapter;

import android.widget.Spinner;

import android.widget.AdapterView.OnItemSelectedListener;

/**

* Demo描述:

* 修改系统自带Spinner字体大小和颜色的完整示例

*

* 参考资料:

* http://blog.csdn.net/xuzhuang2008/article/details/7641685

* Thank you very much

*/

public class TestSpinnerActivity extends Activity {

private Spinner mSpinner;

private ArrayAdapter mAdapter ;

private String [] mStringArray;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

init();

}

private void init(){

mSpinner=(Spinner) findViewById(R.id.spinner);

mStringArray=getResources().getStringArray(R.array.test_string_array);

//使用自定义的ArrayAdapter

mAdapter = new TestArrayAdapter(TestSpinnerActivity.this,mStringArray);

//设置下拉列表风格(这句不些也行)

//mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

mSpinner.setAdapter(mAdapter);

//监听Item选中事件

mSpinner.setOnItemSelectedListener(new ItemSelectedListenerImpl());

}

private class ItemSelectedListenerImpl implements OnItemSelectedListener{

@Override

public void onItemSelected(AdapterView> parent, View view, int position,long arg3) {

System.out.println("选中了:"+mStringArray[position]);

}

@Override

public void onNothingSelected(AdapterView> parent) {}

}

}

TestArrayAdapter如下:

package cc.test;

import android.content.Context;

import android.graphics.Color;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.ArrayAdapter;

import android.widget.TextView;

public class TestArrayAdapter extends ArrayAdapter {

private Context mContext;

private String [] mStringArray;

public TestArrayAdapter(Context context, String[] stringArray) {

super(context, android.R.layout.simple_spinner_item, stringArray);

mContext = context;

mStringArray=stringArray;

}

@Override

public View getDropDownView(int position, View convertView, ViewGroup parent) {

//修改Spinner展开后的字体颜色

if (convertView == null) {

LayoutInflater inflater = LayoutInflater.from(mContext);

convertView = inflater.inflate(android.R.layout.simple_spinner_dropdown_item, parent,false);

}

//此处text1是Spinner默认的用来显示文字的TextView

TextView tv = (TextView) convertView.findViewById(android.R.id.text1);

tv.setText(mStringArray[position]);

tv.setTextSize(22f);

tv.setTextColor(Color.RED);

return convertView;

}

@Override

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

// 修改Spinner选择后结果的字体颜色

if (convertView == null) {

LayoutInflater inflater = LayoutInflater.from(mContext);

convertView = inflater.inflate(android.R.layout.simple_spinner_item, parent, false);

}

//此处text1是Spinner默认的用来显示文字的TextView

TextView tv = (TextView) convertView.findViewById(android.R.id.text1);

tv.setText(mStringArray[position]);

tv.setTextSize(18f);

tv.setTextColor(Color.BLUE);

return convertView;

}

}

main.xml如下:

arrays.xml如下:

无失眠贫血脱发疲惫烦躁偏胖偏瘦白发头痛近视弱视耳鸣

赞助本站

人工智能实验室

相关热词: android开发 教程

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港