Android 使用微调器动态设置textview的颜色?
我想创建一个文本视图,该文本的颜色将由用户通过从微调器对象中选择颜色来更改 微调器对象包含颜色列表,这是用户动态更改textview颜色的选项 请原谅我的英语,帮我解决一下。Android 使用微调器动态设置textview的颜色?,android,xml,Android,Xml,我想创建一个文本视图,该文本的颜色将由用户通过从微调器对象中选择颜色来更改 微调器对象包含颜色列表,这是用户动态更改textview颜色的选项 请原谅我的英语,帮我解决一下。YourSpinner.setOnItemSelectedListener(新的OnItemSelectedListener(){ YourSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { @Override pu
YourSpinner.setOnItemSelectedListener(新的OnItemSelectedListener(){
YourSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id)
{
YourTextView.setTextColor(getResources().getColor(R.color.some_color));
// your code here
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
// your code here
}
});
@凌驾
已选择公共视图(AdapterView父视图、视图selectedItemView、整型位置、长id)
{
YourTextView.setTextColor(getResources().getColor(R.color.some_color));
//你的代码在这里
}
@凌驾
未选择公共无效(AdapterView父视图){
//你的代码在这里
}
});
如果您尝试过在Stack站点上搜索,那就太好了。试试这种方法,希望这能帮助您解决问题。 活动\u main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView"/>
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"/>
</LinearLayout>
<array name="colorname">
<item>Red</item>
<item>Yellow</item>
<item>Green</item>
<item>Blue</item>
<item>Pink</item>
</array>
<array name="colorcode">
<item>#FF0000</item>
<item>#ffff00</item>
<item>#00ff00</item>
<item>#0000ff</item>
<item>#FF0080</item>
</array>
strings.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView"/>
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"/>
</LinearLayout>
<array name="colorname">
<item>Red</item>
<item>Yellow</item>
<item>Green</item>
<item>Blue</item>
<item>Pink</item>
</array>
<array name="colorcode">
<item>#FF0000</item>
<item>#ffff00</item>
<item>#00ff00</item>
<item>#0000ff</item>
<item>#FF0080</item>
</array>
红色
黄色的
绿色
蓝色
粉红色
#FF0000
#ffff00
#00ff00
#0000ff
#FF0080
MainActivity.java
public class MainActivity extends Activity {
private Spinner spinner;
private TextView textview;
private ArrayList<String> colorNameList;
private ArrayList<String> colorCodeList;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview = (TextView) findViewById(R.id.textview);
spinner = (Spinner) findViewById(R.id.spinner);
colorNameList = new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.colorname)));
colorCodeList = new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.colorcode)));
final ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, colorNameList);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataAdapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
textview.setTextColor(Color.parseColor(colorCodeList.get(position)));
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}
公共类MainActivity扩展活动{
私人纺纱机;
私有文本视图文本视图;
私有ArrayList colorNameList;
私有ArrayList colorCodeList;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview=(textview)findViewById(R.id.textview);
微调器=(微调器)findViewById(R.id.spinner);
colorNameList=newArrayList(Arrays.asList(getResources().getStringArray(R.array.colorname));
colorCodeList=newArrayList(Arrays.asList(getResources().getStringArray(R.array.colorcode));
最终ArrayAdapter dataAdapter=新的ArrayAdapter(此,
android.R.layout.simple_微调器_项,colorNameList);
dataAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉项);
spinner.setAdapter(dataAdapter);
spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
setTextColor(Color.parseColor(colorCodeList.get(position));
}
@凌驾
未选择公共无效(AdapterView父级){
}
});
}
}
公共类MainActivity扩展了ActionBarActivity{
私有文本查看文本;
私人纺纱机;
ArrayList al;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
text=(TextView)findViewById(R.id.textView1);
自旋=(微调器)findViewById(R.id.spinner1);
al=新的ArrayList();
al.添加(“红色”);
al.添加(“蓝色”);
ArrayAdapter=新的ArrayAdapter(getApplicationContext(),android.R.layout.simple\u list\u item\u activated\u 1,al);
spin.setAdapter(适配器);
spin.setOnItemSelectedListener(新的OnItemSelectedListener(){
@凌驾
已选择公共视图(适配器视图arg0、视图arg1、内部arg2、,
长arg3){
//TODO自动生成的方法存根
开关(arg2)
{
案例0:
text.setText(“srikanth”);
text.setTextColor(Color.RED);
打破
案例1:
text.setText(“SRIkANTH蓝色”);
text.setTextColor(Color.BLUE);
打破
}
}
@凌驾
未选择公共无效(AdapterView arg0){
//TODO自动生成的方法存根
}
});
}
}
我希望它能帮助你你能帮我发一些代码吗?很高兴能帮你。。。如果这个ans对您有用,您能批准并投票吗?这是否可以将xml文件中的项目提供给colorList和colorMap。。??