在我的应用程序中,我想在按钮点击时使用特定布局的主题。当用户按下第一个按钮时,该布局的主题应为黑色,并且该布局中的所有视图都应根据主题进行更改。
答案 0 :(得分:1)
我希望这会有所帮助......
我想告诉你,你应该首先让小部件的所有背景颜色都透明。因此,您只需要更改LinearLayout或RelativeLayout的背景。
使用此...
android:background="@android:color/transparent"
假设您有正常的主题和RelativeLayout(id = mainBase)按钮发短信“ColorChanger”(id = colBtn)以及带有文本“Change My Color”(id = text)的textView。
您想要更改背景和文字颜色。
在onCreate方法中,写下:
final RelativeLayout base = (RelativeLayout) findViewById(R.id.mainBase);
final TextView txt = (TextView) fidViewbyId(R.id.text);
colBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mainBase.setBackgroundColor(getResources().getColor(R.color.<ColorName>));
text.setTextColor(getResources().getColor(R.color.<ColorName>));
}
});
因此,当您单击该按钮时,RelativeLayout和TextView文本颜色的背景颜色会发生变化,看起来整个主题已经更改。