改变线性布局的背景颜色,而点击 [英] Changing Linear layout background color while clicking
本文介绍了改变线性布局的背景颜色,而点击的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有我的XML的线性布局,并正在通过Java增加一个线性布局(包含两个textviews)到线性布局。触摸事件的作品完美,但我要强调通过设置背景颜色选择的线性布局。请指点。
I am having a linear layout in my xml and am adding another linear layout(containing two textviews) to that linear layout through java. Touch events works perfect, but i want to highlight the selected linear layout by setting background color. Please advice.
推荐答案
定义background.xml在绘制文件夹
Define background.xml in drawable folder
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/pressed" />
<item android:state_focused="false"
android:drawable="@drawable/normal" />
</selector>
normal.xml在绘制文件夹
normal.xml in drawable folder
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF"/>
</shape>
pressed.xml在绘制文件夹
pressed.xml in drawable folder
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FF1A47"/>
</shape>
然后设置背景布局
Then set background to your layout
android:background="@drawable/background"
您还可以设置背景如下
在布局的触摸
ll.setOnTouchListener( new View.OnTouchListener()
{
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
ll.setBackgroundColor(Color.RED);
break;
case MotionEvent.ACTION_UP:
//set color back to default
ll.setBackgroundColor(Color.WHITE);
break;
}
return true;
}
});
这篇关于改变线性布局的背景颜色,而点击的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文