当前位置: 首页 > news >正文

网站策划是什么程序员网站需要多少钱

网站策划是什么,程序员网站需要多少钱,做个公司网站大概多少钱,appserv做网站教程本文主要讲述了利用android自定义控件实现瀑布流与水波纹效果 首先为实现效果#xff0c;应了解touch事件在android中的传递机制 在执行touch事件时 首先执行dispatchTouchEvent方法#xff0c;执行事件分发。 再执行onInterceptTouchEvent方法#xff0c;判断是否中断事件…本文主要讲述了利用android自定义控件实现瀑布流与水波纹效果 首先为实现效果应了解touch事件在android中的传递机制 在执行touch事件时 首先执行dispatchTouchEvent方法执行事件分发。 再执行onInterceptTouchEvent方法判断是否中断事件返回true时中断执行自己的onTouchEvnet方法.最后执行onTouchEvent方法处理事件 瀑布流实现 首先定义三个listView竖起排列并且配置适配器 public class MainActivity extends Activity {private ListView lv1;private ListView lv2;private ListView lv3;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);lv1 (ListView) findViewById(R.id.lv1);lv2 (ListView) findViewById(R.id.lv2);lv3 (ListView) findViewById(R.id.lv3);try {lv1.setAdapter(new MyAdapter1());lv2.setAdapter(new MyAdapter1());lv3.setAdapter(new MyAdapter1());} catch (Exception e) {e.printStackTrace();}}private int ids[] new int[] { R.drawable.default1, R.drawable.girl1,R.drawable.girl2, R.drawable.girl3 };class MyAdapter1 extends BaseAdapter {Overridepublic int getCount() {return 3000;}Overridepublic Object getItem(int position) {return position;}Overridepublic long getItemId(int position) {return 0;}Overridepublic View getView(int position, View convertView, ViewGroup parent) {ImageView iv (ImageView) View.inflate(getApplicationContext(),R.layout.lv_item, null);int resId (int) (Math.random() * 4);iv.setImageResource(ids[resId]);return iv;}} }布局文件的配置 com.example.pinterestlistview.MyLinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:idid/mlltools:context.MainActivity ListViewandroid:idid/lv2android:scrollbarsnoneandroid:layout_width0dpandroid:layout_heightwrap_contentandroid:layout_weight1 /ListViewandroid:idid/lv1android:scrollbarsnoneandroid:layout_width0dpandroid:layout_heightwrap_contentandroid:layout_weight1 /ListViewandroid:idid/lv3android:scrollbarsnoneandroid:layout_width0dpandroid:layout_heightwrap_contentandroid:layout_weight1 //com.example.pinterestlistview.MyLinearLayout 自定义类截取事件分发 public class MyLinearLayout extends LinearLayout {public MyLinearLayout(Context context, AttributeSet attrs) {super(context, attrs);}Overridepublic boolean onInterceptTouchEvent(MotionEvent ev) {return true;}Overridepublic boolean dispatchTouchEvent(MotionEvent ev) {return super.dispatchTouchEvent(ev);}Overridepublic boolean onTouchEvent(MotionEvent event) {int widthgetWidth()/getChildCount();int height getHeight();int countgetChildCount();float eventX event.getX();if (eventXwidth){ // 滑动左边的 listViewevent.setLocation(width/2, event.getY());getChildAt(0).dispatchTouchEvent(event);return true;} else if (eventX width eventX 2 * width) { //滑动中间的 listView float eventY event.getY();if (eventY height / 2) {event.setLocation(width / 2, event.getY());for (int i 0; i count; i) {View child getChildAt(i);try {child.dispatchTouchEvent(event);} catch (Exception e) {e.printStackTrace();}}return true;} else if (eventY height / 2) {event.setLocation(width / 2, event.getY());try {getChildAt(1).dispatchTouchEvent(event);} catch (Exception e) {e.printStackTrace();}return true;}}else if (eventX2*width){event.setLocation(width/2, event.getY());getChildAt(2).dispatchTouchEvent(event);return true;}return true;}} 完成运行效果如下 水波纹效果实现 要实现水波纹效果只需用一个自定义控件填充整个Activity即可 com.zj.wave.MyWaveandroid:layout_widthfill_parentandroid:layout_heightfill_parent/ 自定义控件实现 /*** 水波纹效果* author leo**/ public class MyRingWave extends View{/*** 二个相临波浪中心点的最小距离*/private static final int DIS_SOLP 13;protected boolean isRunning false;private ArrayListWave wList;public MyRingWave(Context context, AttributeSet attrs) {super(context, attrs);wList new ArrayListMyRingWave.Wave();}private Handler handler new Handler(){public void handleMessage(android.os.Message msg) {//刷新数据flushData();//刷新页面invalidate();//循环动画if (isRunning) {handler.sendEmptyMessageDelayed(0, 50);}};};Overrideprotected void onDraw(Canvas canvas) {for (int i 0; i wList.size(); i) {Wave wave wList.get(i);canvas.drawCircle(wave.cx, wave.cy, wave.r, wave.p);}}Overridepublic boolean onTouchEvent(MotionEvent event) {super.onTouchEvent(event);switch (event.getAction()) {case MotionEvent.ACTION_DOWN:case MotionEvent.ACTION_MOVE:int x (int) event.getX();int y (int) event.getY();addPoint(x,y);break;default:break;}return true; }/*** 添加新的波浪中心点* param x* param y*/private void addPoint(int x, int y) {if(wList.size() 0){addPoint2List(x,y);/** 第一次启动动画*/isRunning true;handler.sendEmptyMessage(0);}else{Wave w wList.get(wList.size()-1);if(Math.abs(w.cx - x)DIS_SOLP || Math.abs(w.cy-y)DIS_SOLP){addPoint2List(x,y);}};}/*** 添加新的波浪* param x* param y*/private void addPoint2List(int x, int y) {Wave w new Wave();w.cx x;w.cyy;Paint panew Paint();pa.setColor(colors[(int)(Math.random()*4)]);pa.setAntiAlias(true);pa.setStyle(Style.STROKE);w.p pa;wList.add(w);}private int [] colors new int[]{Color.BLUE,Color.RED,Color.YELLOW,Color.GREEN};/*** 刷新数据*/private void flushData() {for (int i 0; i wList.size(); i) {Wave w wList.get(i);//如果透明度为 0 从集合中删除int alpha w.p.getAlpha();if(alpha 0){wList.remove(i); //删除i 以后i的值应该再减1 否则会漏掉一个对象不过在此处影响不大效果上看不出来。continue;}alpha-5;if(alpha5){alpha 0;}//降低透明度w.p.setAlpha(alpha);//扩大半径w.r w.r3;//设置半径厚度w.p.setStrokeWidth(w.r/3);}/** 如果集合被清空就停止刷新动画*/if(wList.size() 0){isRunning false;}}/*** 定义一个波浪* author leo*/private class Wave {//圆心int cx;int cy;//画笔Paint p;//半径int r;} } 完成效果如下
http://www.zqtcl.cn/news/518322/

相关文章:

  • 网站建设的技术亮点单位宣传册设计样本
  • 网站建设与维护服务敦化市建设局网站
  • 官方网站建设思路wordpress改成织梦
  • 网站建设推广方法网站调优
  • 苏州做企业网站wordpress前台发布文章
  • 怎么建个私人网站网络营销就业前景和薪水
  • 专业的网站开发团队京东电商平台
  • 做网站手机微信小程序怎么加入我的小程序
  • 做网站困难吗公司如何注册网站
  • 可信网站认证收费吗建设化工网站的目的
  • 查网站死链必用工具微信 wordpress
  • 做网站凡科新手如何开微商城店
  • 网站空间维护个人怎么注册一个品牌
  • 连云港网站设计城乡建设网站 资料员
  • 网络优化工程师有多累seo前线
  • 囊谦县公司网站建设新沂网页定制
  • 公众平台网页版wordpress换主题影响seo吗
  • 网站建设什么是静态网页设置wordpress文章标题高亮的代码
  • 男女做那事是什 网站wordpress怎么上传ppt
  • 电商网站图片处理东莞网络营销策划
  • 做知识产权相关的网站网站怎么做登录界面
  • 网站空间备份东莞企业网站教程
  • 新桥企业网站建设有关网站建设的毕业设计
  • 中山网站建设工作修改wordpress后台地址
  • 西安app网站开发如何制作一个自己的网页
  • 陇西学做网站鄂州网约车
  • 做类似58类型网站免费源码分享
  • 个人做的网站有什么危险网站模板怎样发布
  • 设计建设网站公司网站wordpress k2
  • 公司网站被抄袭网络宣传