您的位置:首页 > 其它

如何实现点击字体或者滑动到该模块后 实现字体变色 效果

2017-12-25 18:54 477 查看
1:在color.xml里自定义 两个颜色属性 ,一个是白色 一个是灰色:

<color name="white">#FFFFFFFF</color>
<color name="white_50p">#80FFFFFF</color>


在定义textcolor的时候,这能够方便我们取色;

2:我们定义了这两个属性后,我这里定义了两个页面:一个是“我的音乐”另一个页面是“在线音乐”;

效果图1:



效果图2:



注意:我这里是点击“我的音乐”“在线音乐” 或者左右滑动页面 都有这样的效果;

3:在布局里“我的音乐”和“在线音乐”中的textcolor 重新设置了,部分代码如下:

android:text="我的音乐"
android:textColor="@color/white"


android:textColor="@color/white_50p"
android:text="在线音乐"


因为主页面是“我的音乐”,所以初始为白色!“在线音乐”为“灰色”。

4:在MainActivity.java里 我们创建一个Viewpage 的监听方法(不要手打,在写ViewPager.OnPageChangeListener后,用快捷键Alt+回车)

代码如下:

viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}

@Override
public void onPageSelected(int position) {
}

@Override
public void onPageScrollStateChanged(int state) {
}
});


5:因为我们要判断滑动切换页面后字体的效果 所以我这里用到了switch语句

代码如下:

switch (position){
case 0:
localTV.setTextColor(getResources().getColor(R.color.white));        //初始画面时 ,"我的音乐"颜色为白色
onlineTV.setTextColor(getResources().getColor(R.color.white_50p));     //"在线音乐"颜色为灰色
break;
case 1:
localTV.setTextColor(getResources().getColor(R.color.white_50p));    //向右滑动页面后,"在线音乐"为白色
onlineTV.setTextColor(getResources().getColor(R.color.white));   //"我的音乐"为灰色
}


这个写在这个代码里面:

@Override
public void onPageSelected(int position) {
}


总结

1:自定义两个颜色;

2:需要创建页面监听;

3:用switch语句 实现滑动页面后,一样的效果;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  字体 变色
相关文章推荐