博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android音乐、视频类APP常用控件:DraggablePanel(1)
阅读量:6208 次
发布时间:2019-06-21

本文共 1682 字,大约阅读时间需要 5 分钟。



Android音乐、视频类APP常用控件:DraggablePanel(1)

Android的音乐视频类APP开发中,常涉及到用户拖曳视频、音乐播放器产生一定交互响应的设计需求,最典型的以YouTube APP为例。

YouTube在开发中,有用到一个第三方开源的可拖曳面板:DraggablePanel。DraggablePanel在github上的项目主页:
DraggablePanel的设计效果如动图所示,动图查看链接:

写一个DraggableView的小例子。

测试的主activity MainActivity.java:

package zhangphil.demo;import android.app.Activity;import android.os.Bundle;import android.widget.ArrayAdapter;import android.widget.ListView;public class MainActivity extends Activity {	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		String[] data1 = new String[50];		for (int i = 0; i < data1.length; i++)			data1[i] = "item:" + i;		ArrayAdapter adapter1 = new ArrayAdapter(this, android.R.layout.simple_list_item_1, android.R.id.text1, data1);		ListView mainListView = (ListView) findViewById(R.id.mainListView);		mainListView.setAdapter(adapter1);		ListView secondListView = (ListView) findViewById(R.id.secondListView);		String[] data2 = { "Z", "H", "A", "N", "G", "P", "H", "I", "L" };		ArrayAdapter arrayAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, android.R.id.text1,				data2);		secondListView.setAdapter(arrayAdapter);	}}

布局文件activity_main.xml:

代码运行结果:

初始化状态:

向下拖曳时候渐变:

拖曳到最底部的情形:

又拖曳机器人向上:

mainListView在一定程度上可以理解为“背景全部数据”。
DraggableView将是随用户拖曳产生交互响应的面板,在DraggableView里面,再套两层Android View,本例是一个简单的ImageView和一个ListView,ImageView在上,ListView在下,这两者套在DraggableView里面,随用户的拖曳动作产生相应的拖曳滑动。

附录相关文章:

1,《Android自底部平滑向上滑出面板的AndroidSlidingUpPanel》链接地址:

转载于:https://www.cnblogs.com/hehehaha/p/6147317.html

你可能感兴趣的文章
sqlserver中 事物 索引及视图
查看>>
NOIP2011 铺地毯
查看>>
MySQL学习【第十二篇事务中的锁与隔离级别】
查看>>
在VS2015中用C++创建DLL并用C#调用且同时实现对DLL的调试
查看>>
Struts2国际化
查看>>
循环Map方法
查看>>
nib和xib的区别
查看>>
== 和 is 的区别
查看>>
Selenium2Library+ride学习笔记
查看>>
OSPF RFC2740
查看>>
OBJECT_ID()的使用方法
查看>>
'800a0005' 图片上传出现写入文件失败的错误 -- 修改pload_5xsoft.inc
查看>>
[Egret][文档]遮罩
查看>>
sql的split()函数
查看>>
建造者模式
查看>>
hdu 1166 敌兵布阵 (线段树)
查看>>
突然想到了王自如
查看>>
Adding Flexcan driver support on Kernel
查看>>
ElastciSearch简单总结(笔记)
查看>>
14-angular.isDefined
查看>>