2012-06-27 65 views
0

这是创建一个贺卡应用程序,在这里我必须改变视图的背景颜色(这是卡的背景),当点击一个按钮时。当我点击标有红色的按钮时,视图应该将其颜色更改为红色。等等。有人可以帮我弄这个吗?在android中单击按钮更改视图的颜色?

public void myClickHandler(View view) { 
    switch (view.getId()) { 
     case R.id.btn1: 

     layout= (FrameLayout) findViewById(R.id.laidout); 
     layout.setBackgroundColor(Color.RED); 
     break; 

     } 
+2

你是什么意思的“不工作”?你如何使用这段代码?这个方法从哪里调用? –

+0

尝试...设置FrameLayout父项颜色不适合你? –

+0

@namida问题是否解决? –

回答

0

你应该在的onClick(查看视图)方法,而不是myClickHandler()编写代码和ID“BTN1。 “应该是您在xml文件中声明的id名称。

+0

我确实将事件改为onClick,但仍然在LogCat中出现错误。 –

+0

logcat中的错误是什么? –

+0

在dalvik.system.NativeStart.main和上面的一些其他错误。 –

1

我不认为你的myClickHandler将工作,试试这个:

button.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     // your switch case etc... 
    } 
}); 
+0

当我点击按钮时,进程停止。 –

+0

这是我修改它的方式。并在Logcat中发生错误,并且进程停止。 \t btn1.setOnClickListener(新OnClickListener(){ \t \t @Override \t \t公共无效的onClick(视图v){ \t \t \t开关(v.getId()){ \t \t \t情况R.id .btn1: \t \t \t \t \t \t \t \t布局=(的FrameLayout)v.findViewById(R.id.laid出); \t \t \t \t layout.setBackgroundColor(Color.RED); \t \t \t \t break; \t \t \t} \t \t} \t \t}); \t \t} –

+0

什么错误? –

相关问题