文章内容

  1. ViewFlipper简单使用
  2. 图片倒影
  3. 遥控器左右键切换图片
  4. Demo地址

我又没钱买奔驰,我也来谈996,再说我又不是刘*东,也没法带这些996的兄弟们一起到国外去喝奶茶。不对不对,跑题了。

好,那么下面我们来进入正题。话说我如果是电商王子,我就叫小马,我全力支持996这种工作模式,别问我为什么,因为我对钱没有兴趣。

嗨,终究是沉浸于逻辑程序逻辑中无法自拔了,写个博客都要跑题半天。好吧话不多说,话说这个IPTV桌面背景图片自动播放效果,嗯,IPTV之所以有这般夕阳红的景象多得益于*电的垄断式运营模式。靠

跑题了!


ViewFlipper简单使用

xml定义

<ViewFlipperandroid:id="@+id/images"android:layout_width="match_parent"android:layout_height="match_parent" >
</ViewFlipper>

Activity怎么弄

    private int[] imgs = { R.drawable.photo1, R.drawable.photo2,R.drawable.photo3 };private ViewFlipper flipper;private int delayMillis = 5 * 1000;
@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);flipper = (ViewFlipper) findViewById(R.id.images);LayoutInflater inflater = LayoutInflater.from(this);for (int i = 0; i < imgs.length; i++) {ImageView iv=new ImageView ();iv.setScaleType(ImageView.ScaleType.FIT_XY);iv.setBackgroundResource( imgs[i]);flipper.addView(iv);}// 图片播放的时间flipper.setFlipInterval(delayMillis);// 是否允许自动播放flipper.setAutoStart(true);// 启动,开始播放if (flipper.isAutoStart() && !flipper.isFlipping()) {flipper.startFlipping();}
}

图片倒影

自动播放图片就是这么简单,不加一点动画或图片处理什么的也太对不起996大佬对我们的厚爱了,下面做一下图片倒影处理;

public static Bitmap createReflectedImage(Context context, int drawable) {Bitmap bmp = BitmapFactory.decodeResource(context.getResources(),drawable);final int reflectionGap = 1;int width = bmp.getWidth();int height = bmp.getHeight();Matrix matrix = new Matrix();matrix.preScale(1, -1);Bitmap reflectionImage = Bitmap.createBitmap(bmp, 0, height / 2, width,height / 2, matrix, false);Bitmap bitmapWithReflection = Bitmap.createBitmap(width,(height + height / 5), Config.ARGB_8888);Canvas canvas = new Canvas(bitmapWithReflection);canvas.drawBitmap(bmp, 0, 0, null);Paint defaultPaint = new Paint();canvas.drawRect(0, height, width, height + reflectionGap, defaultPaint);canvas.drawBitmap(reflectionImage, 0, height + reflectionGap, null);Paint paint = new Paint();LinearGradient shader = new LinearGradient(0, bmp.getHeight(), 0,bitmapWithReflection.getHeight() + reflectionGap, 0x70000000,0x00000000, TileMode.MIRROR);paint.setShader(shader);paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));canvas.drawRect(0, height, width, bitmapWithReflection.getHeight()+ reflectionGap, paint);return bitmapWithReflection;}

遥控器左右键切换图片

完了该滚的也滚了,该倒的也倒过来了,别误解,我说的是图片哈,下面来说一下实际应该场景吧!这玩意一般可以用于滚动广告,酒店服务介绍界面等,好吧,举一个栗子,遥控器左右键切换;

@Override
public boolean dispatchKeyEvent(KeyEvent event) {int keyCode = event.getKeyCode();final boolean uniqueDown = event.getRepeatCount() == 0&& event.getAction() == KeyEvent.ACTION_DOWN;// 上键上一页if (uniqueDown && keyCode == KeyEvent.KEYCODE_DPAD_LEFT) {flipper.showPrevious();pauseFlipping();return true;}// 按右键下一页else if (uniqueDown && keyCode == KeyEvent.KEYCODE_DPAD_RIGHT) {flipper.showNext();pauseFlipping();return true;}return super.dispatchKeyEvent(event);}/*** 暂停一会了*/
public void pauseFlipping() {flipper.stopFlipping();if (startFlippingTask != null) {startFlippingTask.cancel();startFlippingTask = null;}startFlippingTask = new TimerTask() {@Overridepublic void run() {// TODO Auto-generated method stubhandler.sendEmptyMessage(1);}};mTimer.schedule(startFlippingTask, delayMillis);
}/*** 开始播放*/
public Timer mTimer = new Timer();
public TimerTask startFlippingTask;
@SuppressLint("HandlerLeak")
Handler handler = new Handler() {public void handleMessage(android.os.Message msg) {flipper.startFlipping();};
};

来来来,总结一下,其实不用写这一推没用,只是为了好看一点罢了,当然你可以做一下手势判断,做左右滑动切换,看下面这里:

  • flipper.showPrevious();//上一张
  • flipper.showNext();//下一张
  • flipper.startFlipping();//开始播放

Demo地址

GitHub:https://github.com/Life1412378121/FlipperPlayer.git
CSDN:https://download.csdn.net/my

滚动图片 电视背景滚动图片效果 IPTV桌面滚动图片效果 图片倒影 滚动广告图相关推荐

  1. android桌面雪花效果代码,桌面下雪花效果(DesktopSnowOK)

    圣诞节桌面下雪花模拟工具,让电脑屏幕下雪,飘起雪花的趣味软件. 让你的桌面呈现出不一样的风采,别具一格的个性化的色彩会让人眼前一亮! 特点: 1.可以自由调节桌面雪花的数量.透明度.下雪的速度.从而可 ...

  2. PS橡皮擦魔棒设置图片的背景为透明

    PS橡皮擦魔棒设置图片的背景为透明 操作步奏 1.PS打开图片 2.选中魔棒橡皮檫 3.点击需要设置为透明度的区域 4.点击文件另存为图片 操作如图:

  3. Android TextView设置.9图片为背景,文字被遮挡

    记录一下,昨天因为给textview添加.9图片为背景,文字被遮挡住了 文字被遮住是因为设置.9图 会导致之前设置的padding失效,textview在xml中设置padding或者在代码中设置pa ...

  4. 怎么在ppt上设置文字滑动的效果html,PPT 中如何设置图片滚动切换效果

    我们经常在工作中使用PPT办公软件,在网页上也经常看到一组图片水平滚动或者垂直滚动的效果,你知道PPT 中如何设置图片滚动切换效果吗?今天小编就教一下大家使用PPT 中如何设置图片滚动切换效果. 首先 ...

  5. html背景图片随鼠标滚动条,博客音效代码、滚动条代码、单张图片滚动代码、背景图片代码、个性鼠标(2)...

    [99补]隐形博客音效代码 一句代码直接插入,比你从任何地方看到的都要简单: dynsrc=http://www.smartclub.com.cn/smart_sms/music/male/hktk. ...

  6. iOS开发之高斯模糊图片虚化/背景填充效果

    高斯模糊图片虚化 生成一个UIVisualEffectView图层,覆盖在你需要做高斯模糊的位置上方 UIBlurEffect *effect = [UIBlurEffect effectWithSt ...

  7. CSS background 之设置图片为背景技巧

    首先先来看看background有那些值: 可以按顺序设置如下属性(可点击进入相应的css手册查看使用): background-color 背景颜色 background-image 背景图片 ba ...

  8. Css的背景(背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定)

    通过css背景属性,可以给页面元素添加背景样式. 背景属性可以设置背景颜色.背景图片.背景平铺.背景图片位置.背景图像固定等. 背景颜色: Background-color:#******: < ...

  9. CSS的背景属性设置(背景颜色、背景图片、背景平铺、背景附着、背景复合写法)

    文章目录 1 背景颜色 2 背景图片 3 背景平铺 4 背景图片位置 5 背景图像固定(背景附着) 6 背景复合写法 7 背景色半透明 8 背景总结 案例:五彩导航 通过CSS背景属性,可以给页面元素 ...

最新文章

  1. 10.07-Idea的使用
  2. vuex报错: [vuex] Expects string as the type, but found undefined.
  3. HashMap 详解
  4. org.junit.runners.model.InvalidTestClassError: Invalid test class ‘‘: 1. No runnable methods
  5. 指定开始_Flink-Kafka指定offset的五种方式
  6. pyqt 不规则形状窗口显示
  7. JavaScript与HTML交互——事件
  8. ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘
  9. Python 域名转IP(可包含http、https)
  10. tomcat下多个app 不同的图标_5G SA网络切片下,独立APP应用如何自行接入不同网络切片...
  11. 636. 函数的独占时间
  12. hibernate之多对多配置
  13. 16G BIDI SFP+光模块知识大全
  14. java scavenge_JAVA Parallel Scavenge收集器
  15. CAN总线学习笔记 | CAN盒测试STM32的CAN中断接收
  16. [ZT]金融衍生品的重大危害性——兼谈3.27国债风暴
  17. Admin.NET管理系统(vue3等前后端分离)学习笔记--持续更新
  18. Qt成功运行Zynq UltraScale+MPSoC平台上
  19. 【CSDN竞赛第5期】编程竞赛总结
  20. java redis存储键值包含\xac\xed\x00\x05t\x00\特殊字符

热门文章

  1. mac下配置java运行环境
  2. 键盘上的双引号变成@了
  3. 面试 | 软通动力技术面
  4. 笔记本通过网口控制单片机_戴尔将让苹果用户通过笔记本控制iphone 可镜像iphone屏幕、拖拽文件等...
  5. ERP实施-客供料管理(受托加工、来料加工)
  6. 日本旅行一些注意事项
  7. 临床预测模型评鉴(PMID28259045)-乳腺癌
  8. Spring Boot 这样优化,让你的项目飞起来!
  9. Logstash 安装+配置+数据采集示例
  10. 【转】《信号完整性分析》个人学习笔记