更改textview颜色的问题-android片段
我的片段中有两个文本视图。打开片段时,第一个文本视图将显示为红色(#e92624)。按下第二个文本视图时,第一个视图应为黑色(#D8000000),第二个文本视图应变为红色 在我的onCreate中更改textview颜色的问题-android片段,android,android-fragments,textview,Android,Android Fragments,Textview,我的片段中有两个文本视图。打开片段时,第一个文本视图将显示为红色(#e92624)。按下第二个文本视图时,第一个视图应为黑色(#D8000000),第二个文本视图应变为红色 在我的onCreate中 mQuickReturnViewPas.setBackgroundColor(Color.parseColor("#e92624")); if (selectedView != null) mQuickReturnViewPas.setBackgroundC
mQuickReturnViewPas.setBackgroundColor(Color.parseColor("#e92624"));
if (selectedView != null)
mQuickReturnViewPas.setBackgroundColor(Color
.parseColor("#D8000000"));
mQuickReturnViewPas
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
}
});
mQuickReturnViewRic
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
}
});
}
在我的创造之外
mQuickReturnViewPas.setBackgroundColor(Color.parseColor("#e92624"));
if (selectedView != null)
mQuickReturnViewPas.setBackgroundColor(Color
.parseColor("#D8000000"));
mQuickReturnViewPas
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
}
});
mQuickReturnViewRic
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
}
});
}
使用此代码,如果我按下第二个文本视图,它将变为红色,但第一个文本视图将保持红色(不会变为黑色)。要完成此任务,我应该对我的
onCreate
方法做什么更改?像这样更新您的方法
mQuickReturnViewPas
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
// change non-selected view to be black
mQuickReturnViewRic.setBackgroundColor(Color
.parseColor("#D8000000"));
}
});
mQuickReturnViewRic
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (selectedView != null)
selectedView.setBackgroundColor(Color
.parseColor("#D8000000"));
// set selectedView to be current selected view
selectedView = (TextView) v;
// change selected view to be red
selectedView.setBackgroundColor(Color
.parseColor("#e92624"));
// change non-selected view to be black
mQuickReturnViewPas.setBackgroundColor(Color
.parseColor("#D8000000"));
}
});
在onClick中,您应该更改第一个文本视图的颜色,而不是在onCreate中。是的,answer1将为您更改。您在其他_textView.setBackgroundColor(Color.parseColor(“#D8000000”))中缺少此语句@Kesh1234我的坏我错过了它,这真的很有效:)酷快乐编码:)