如何在Android中更改特定布局的主题?

时间:2011-12-22 06:37:21

标签: android-layout

在我的应用程序中,我想在按钮点击时使用特定布局的主题。当用户按下第一个按钮时,该布局的主题应为黑色,并且该布局中的所有视图都应根据主题进行更改。

1 个答案:

答案 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文本颜色的背景颜色会发生变化,看起来整个主题已经更改。