为View添加阴影效果的工具类:ShadowViewHelper

 更新时间:2016年10月2日 16:23  点击:1705
ShadowViewHelper工具在安卓开发应用中我们用到的不多了,今天我们来看一篇关于为View添加阴影效果的工具类:ShadowViewHelper的例子吧。

3                                       2

其实这两张图是相同的界面,区别在于右边的弹窗添加了阴影效果,而左边的没有,这就导致了同一个界面出现了截然不同视觉效果,这就是ShadowViewHelper的功劳了,它是一个给View添加阴影效果的工具类,下面说一下它的使用方法。

1.在module对应得build.gradle加上

compile 'com.github.wangjiegulu:ShadowViewHelper:1.0.1'

2.在代码中个使用

ShadowViewHelper.bindShadowHelper(
        new ShadowProperty()
                .setShadowColor(0x77000000)
                .setShadowRadius(10)
                .setShadowDx(10)
                .setShadowDy(10)
        , view);
bindShadowHelper()方法的第一个参数是设置阴影的属性,第二个参数是要设置阴影的View。

设置阴影的属性也很简单,只有四个方法:

1
setShadowColor(0x77000000) //设置阴影颜色
1
setShadowRadius(10) //设置阴影半径
1
setShadowDx(10) //设置阴影x偏移
1
setShadowDy(10) //设置阴影y偏移
其中,前两个方法必须写,后两个方法可以不写。使用时需要注意几个问题:

(1)阴影半径、x偏移、y偏移的单位都是px

(2)阴影并不是在View的外部设置,而是在View的内部,所以阴影半径、x偏移、y偏移的值不能太大,否则会覆盖View的内容

下面我们来看一篇关于Android设置ListView滚动到某一位置的例子,希望这篇文章能够帮助到各位朋友,具体的如下介绍。


最近在做项目的时候有一个功能就是点击某个按钮的时候要当前页面停留在某一个固定的位置,而当前页面只有一个ListView,如果是ScrollView,那么相信就会简单很多了,直接调用ScrollView.scrollTo(x,y);或者ScrollView.smoothScrollTo(x,y);这两个方法中的一个,然后给与指定的y值就OK,但是如果是ListView呢,原理是差不多的,这里也有两个方法
setSelection()和setSelectionFromTop()。

如果你要停留在当前第5个item的位置,也就是让第五个item置顶,那么直接listView.setSelection(5)就OK了,但是如果我要停留在更精准的位置上那么就要调用setSelectionFromTop()这个方法了,比如我要停留在第4个和第五个item正中间位置,那么假设第四个item的高度是100px,那么直接listView.setSelectionFromTop(5,50)就OK了.


解释一下这两个方法的原理:setSelectionFromTop()的作用是设置ListView选中的位置,同时在Y轴设置一个偏移量。

而setSelection()方法,传入一个index整型数值,就可以让ListView定位到指定Item的位置。

添加一个List1和一个Command1到Form1上,添加以下代码。运行后按Command1按钮看看是不是你想要的效果

/** Save the position **/
int currentPosition = listView.getFirstVisiblePosition();

//Here u should save the currentPosition anywhere

/** Restore the previus saved position **/
listView.setSelection(savedPosition);


当然,也可以使用这个方法:
 // save index and top position
int index = mList.getFirstVisiblePosition();
View v = mList.getChildAt(0);
int top = (v == null) ? 0 : v.getTop();

// ...

// restore
mList.setSelectionFromTop(index, top);

输入法什么时候显示或隐藏对于我们app中非常的有用哦,下面我们来看Andriod中输入法的显示与隐藏的例子吧


用InputMethodManager类自由控制输入法的显示与隐藏

//显示输入法
InputMethodManager mImm = (InputMethodManager) ActivityDetailsActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
mEtMessage.requestFocus();//获取焦点
mImm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);//弹出键盘
 

//隐藏输入法

mEtMessage.clearFocus();
mImm.hideSoftInputFromWindow(mEtMessage.getWindowToken(), 0);

在Android中onResume和onActivityResult的执行先后是什么样的呢,我们这里来为各位做一个关于onResume和onActivityResult的测试吧。

今天在做项目的时候要做到拍照的功能,当时就在想onResume和onActivityResult这两个方法谁会先执行呢,就测试了一下,打印一下当时的System.currentTimeMillis()看一下执行先后的顺序。

打印onResume:


@Override
protected void onResume() {
    super.onResume();
    Log.i("打印onResume====", System.currentTimeMillis()+"");
}

打印onActivityResult:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.i("打印onActivityResult====", System.currentTimeMillis()+"");
}
输出结果:


打印onActivityResult====: 1474678061478
打印onResume====: 1474678061864

ima555ge

 

[!--infotagslink--]

相关文章

  • Painter绘制红衣喝酒男水粉画效果教程

    今天小编在这里就来给Painter的这一款软件的使用者们来说一说绘制红衣喝酒男水粉画效果的教程,各位想知道具体绘制步骤的使用者,那么下面就快来跟着小编一起看一看教程...2016-09-14
  • photoshop用各种素材合成闪电侠效果制作教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来说说利用各种素材合成闪电侠效果的制作教程,各位想知道具体制作步骤的使用者们,那么下面就快来跟着小编一起看...2016-09-14
  • 美图秀秀把普通照片快速转换成卡通效果教程

    今天小编在这里就来给美图秀秀的这一款软件的使用者们来说下把普通照片快速转换成卡通效果的教程,各位想知道具体制作步骤的使用者们,那么下面就快阿里跟着小编一起看一...2016-09-14
  • JS实现双击屏幕滚动效果代码

    本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
  • photoshop调出时尚个性青色人像照片效果调色教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来说说调出时尚个性青色人像照片效果的调色教程,各位想知道到底该怎么调色的,那么下面就快来跟着小编一起看一看...2016-09-14
  • ps怎么制作图片阴影效果

    ps软件是现在很多人比较喜欢的,有着非常不错的使用效果,这次文章就给大家介绍下ps怎么制作图片阴影效果,还不知道制作方法的赶紧来看看。 ps图片阴影效果怎么做方法/...2017-07-06
  • ps立体倒影效果制作方法

    ps软件是现在很多人比较喜欢使用的,有着非常不错的功能。这次文章就给大家介绍下ps立体倒影效果制作方法,还不知道怎么制作的赶紧来看看。 最终效果  1...2017-07-06
  • C#中添加窗口的步骤详解

    下面小编就为大家带来一篇C#中添加窗口的步骤详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • ps制作立体文字效果教程

    ps软件是现在非常受大家喜欢的一款软件,有着非常不错的制作效果。下面文章就给大家介绍下ps制作立体文字效果教程,感兴趣的一起来看看。 ps文字立体效果怎么做最终...2017-07-06
  • 关于python pygame游戏进行声音添加的技巧

    这篇文章主要给大家分享的是pygame游戏进行声音添加的方法,这文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!...2021-10-23
  • 利用Photoshop打造科幻片中的人物粒子化消失效果

    本文章分享一篇关于Photoshop打造科幻片中的人物粒子化消失效果,教程重点是画笔的应用,人物身上产生的碎块,颗粒等都是用自定或下载的笔刷来完成,制作之前最好先下载一些...2016-09-14
  • jQuery实现的文字hover颜色渐变效果实例

    这篇文章主要介绍了jQuery实现的文字hover颜色渐变效果,以完整实例形式分析了jQuery实现文字颜色渐变效果的相关技巧,涉及jQuery插件jquery-ui-1.8.16.custom.min.js的使用,需要的朋友可以参考下...2016-02-23
  • painter绘制水彩油画双重效果向日葵插画教程

    今天小编在这里给painter的这一款软件的使用者们带来的是绘制水彩油画双重效果向日葵插画的教程,各位想知道具体绘制方法的使用者,那么下面就快来跟着小编一起看一看吧...2016-09-14
  • Springboot实现多线程注入bean的工具类操作

    这篇文章主要介绍了Springboot实现多线程注入bean的工具类操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-27
  • JQuery EasyUI学习教程之datagrid 添加、修改、删除操作

    这篇文章主要介绍了JQuery EasyUI datagrid 添加、修改、删除操作的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-07-25
  • Painter绘制卡通小丑头像效果教程

    今天小编在这里就来给Painter的这一款软件的使用者们来说一下绘制卡通小丑头像效果的教程,各位想知道具体制作步骤的使用者,那么下面就快来跟着小编一起看一看制作步骤...2016-09-14
  • ps怎么制作人物影子效果

    ps软件是现在很多人比较喜欢的,通过ps软件可以制作很不错的图片效果。这次文章就给大家介绍下使用ps怎么制作任务影子,具体制作方法下面一起来看看。 ps人物影子效...2017-07-06
  • CSS制作的页面背景固定和滚动效果

    背景固定效果在许多的网站都能看到,今天我们一起来看一个关于CSS制作的页面背景固定和滚动效果,应用非常的好用希望对各位带来帮助。 如何创建一个不需要Javascript...2016-09-14
  • 美图秀秀怎么给照片添加电影字幕

    美图秀秀是一款不错的图片处理软件了,最近看到很多的朋友喜欢把自己的照片处理成电影字幕效果了,下面我们来看看美图秀秀怎么给照片添加电影字幕吧,希望文章对各位有帮助...2016-09-14
  • PHP在引号前面添加反斜杠(PHP去除反斜杠)

    一般空间商提供的服务器空间默认PHP 指令 magic_quotes_gpc是on的,也就是打开的。这时候就可以用stripslashes() 函数删除自动添加的反斜杠。用法就是:比如包含字符串的变量是$str,那么就用stripslashes() 函数处理一下...2013-10-04