QQ下拉电脑qq红包在哪里查看啊?急,在线等,快啊啊啊!

QQ红包怎么领 QQ红包领取步骤解析_图文攻略_全通关攻略_高分攻略_百度攻略
QQ红包活动来袭,QQ也来送红包。倍受玩家们的关注,那么QQ红包怎么领?下面就请跟百度攻略&96u小编一起来看一下吧。QQ红包怎么领首先,需要升级你的QQ为最新版本的V 5.3.2 如下图所示至于如何升级应该不用我说啦。精彩内容,尽在百度攻略:然后登陆你的QQ账号,选择 联系人 里面的 生活服务 选项。如下图所示精彩内容,尽在百度攻略:然后找到 QQ红包 选项,如果没有的话,在上面搜索栏里搜索QQ红包就行啦。然后关注它即可。点击QQ红包,就可以看到别人发红包时,你的领取记录和你的发红包记录。精彩内容,尽在百度攻略:小伙伴儿发红包会把链接发到我们的QQ上或者是QQ群里,让大家自己领取。如下图所示精彩内容,尽在百度攻略:注意:红包是只能用手机领取的,电脑是领取不了的。然后,我们点击链接就可以抢红包啦。还可以看到其他小伙伴儿抢到的红包金额哦,领取到最高的红包的人就是运气王。以上就是QQ红包怎么领的相关攻略,希望可以帮助到各位玩家们。精彩内容,尽在百度攻略:
Q-相关攻略推荐
Q-综合攻略怎样抢QQ红包最快?_百度知道恭喜发财! -- 手把手教你仿造一个qq下拉抢红包 Android自定义view
恭喜发财! -- 手把手教你仿造一个qq下拉抢红包 Android自定义view
[摘要:猴年猴赛雷啊列位,本日出吃药我感到本身萌萌哒!
qq战微疑战领取宝白包大战,没有晓得列位的战绩是若干嘞? 横竖我qq抢到的皆是气泡。由于太没有爽,以是本身写一个下推抢白包本身]
猴年猴赛雷啊各位,今天没吃药我感觉自己萌萌哒!
qq和微信和支付宝红包大战,不知道各位的战绩是多少嘞? 反正我qq抢到的都是气泡。因为太不爽,所以自己写一个下拉抢红包自己玩(自己跟自己玩)。
先来看效果图。这个…… 呃~~ -__-” 。。有点丑 是低仿。
转载请注明出处:http://blog.csdn.net/wingichoy/article/details/
学习完本篇博客你能获得到的知识
正确的获得view的大小
listview的下拉header
自定义字体
自己添加监听器
废话不多说,快跟我来一起动手
首先来跟我打造一个自定义的listview
新建一个类,继承自listview,这里需要来重写一下他的overScrollBy()方法。
public class HBListView extends ListView {
private MyImageView mImageV
private Context mC
private OnSuccessListener mOnSuccessL
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) {
Log.e("wing", "deltaY:" + deltaY + " scrollY:" + scrollY);
return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX, scrollRangeY, maxOverScrollX, maxOverScrollY, isTouchEvent);
先来介绍一下重要参数的意思
deltaX,Y是指速度值,也就是你手指滑动的瞬时速度。
水平和数值方向上的变化量
isTouchEvent 表示手指是否在触摸状态
观察log可以轻易看到他们与手机触摸的关系。大家自己试验一下就可以。
接着给listview加一个header
mListView = (HBListView) findViewById(R.id.lv)
final View header = LayoutInflater.from(this).inflate(R.layout.view_header,null)
mListView.addHeaderView(header)
其实这个header就是个图片。 我们刚才从listview的监听上面看到了偏移量。所以可以根据偏移量来动态改变图片的大小。
&?xml version="1.0" encoding="utf-8"?&
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"&
android:id = "@+id/imageView"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="0dp"
android:src="@drawable/bg" /&
因为header刚开始是隐藏的,所以这里高度设置为0.
这里来一个小插曲。。不知道大家有没有在activity中获取view的高度呢。是不是有时候只能拿到0。对于这个问题呢。正确的获取view宽高有如下几种解决方案。
1.onWindowsFocusChanged()
2.view.postRunnable()
将一个runnable投递到消息队列尾部。
3.ViewTreeObserver
这里采用第三种方法,在OnGlobalLayoutListener中 调用listview的changSize方法。。
header.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
public void onGlobalLayout() {
mListView.changeSize(image);
header.getViewTreeObserver().removeGlobalOnLayoutListener(this);
这里看看listview的changsize方法,其实只是将header的引用传来而已..这是因为之前在这里获取高度,后来又去掉了。。偷懒没有改方法名
public void changeSize(MyImageView imageView) {
mImageView = imageV
拿到了图片之后,理所当然是根据手指来改变图片的大小啦。 还记得onScrollBy里面的几个参数吗,我们只需要在 (触摸的时候&&下滑的时候) 改变图片的大小就可以了。
下滑的状态可以根据log得知为deltaY&0.
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) {
Log.e("wing", "deltaY:" + deltaY + " scrollY:" + scrollY);
if (mImageView.getHeight() & 300) {
if (isTouchEvent && deltaY & 0) {
mImageView.getLayoutParams().height += Math.abs(deltaY);
mImageView.requestLayout();
return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX, scrollRangeY, maxOverScrollX, maxOverScrollY, isTouchEvent);
这样便可以下拉了,现在的效果是这样的。
咦。。是可以下拉了。但是没有回弹,怎么办!
还能怎么办 写一个就是了。思路就是用一个动画,来不停地改变header高度。
ObjectAnimator的使用
他的使用方法很简单,他通过反射调用set方法来改变view的属性然后发生动画。这里直接上例子,首先重写一下imageview,添加一个setHeight()方法.
public class MyImageView extends ImageView {
private Paint mP
public void setHeight(int height) {
getLayoutParams().height =
requestLayout();
然后在使用ObjectAnimator的ofInt方法,获取到一个ObjectAnimator,这里ofXXX具体看参数类型。
private void closeHeader() {
ObjectAnimator oa = ObjectAnimator.ofInt(mImageView, "height", mImageView.getHeight(), 0);
oa.start();
这时候关闭动画就做完啦。想要关闭的时候 只需要在action_up调用closeHeader()方法即可.现在是这样的:
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_UP:
closeHeader();
咦,有没有似曾相识的赶脚,没错!!这特么的不就是下拉刷新么。 好了本篇博客到此结束!!
额。。你先把手里的刀放下w(?Д?)w!!!
刚才结束的是下拉刷新的博客,现在继续写抢红包的博客。。。
思路就是用一个变量来保存连刷的次数,再用随机数判断是否抽中红包。
给MyImageView一个public的属性次数
public class MyImageView extends ImageView {
public int mT
然后只要在ACTION_UP的时候,判断随机数有没有抽中,决定次数是否累加:
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_UP:
int ran = (int) (Math.random() * 10);
if (ran & 1) {
mImageView.mTime++;
closeHeader();
mImageView.mTime = 0;
if (mOnSuccessListener != null) {
mOnSuccessListener.onSuccess();
closeHeader();
return super.onTouchEvent(ev);
逻辑是不是粉简单! 聪明的你已经看到了抢红包成功的回调。这个等等说,先说拿到了次数以后怎么做。
拿到了次数之后理所应道就是把文字画上去啦~~ 这里为了方便就给了一个固定的位置。因为数字大小跟文字不一样,所以把字符串分了三串来画..
public int mT
private Typeface mTypeF
private float mTxtHL
private float mTxtRL
private String txtH = "连刷";
private String txtR = "次,加油!";
public MyImageView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mPaint = new Paint();
mPaint.setColor(Color.YELLOW);
mMidPaint = new Paint();
mMidPaint.setColor(Color.YELLOW);
mTypeFace = Typeface.createFromAsset(context.getAssets(), "ifont.ttf");
mMidPaint.setTypeface(mTypeFace);
mPaint.setTypeface(mTypeFace);
mPaint.setTextSize(50);
mMidPaint.setTextSize(100);
mTxtHLength = mPaint.measureText(txtH);
mTxtRLength = mPaint.measureText(txtR);
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
String count = mTime + "";
float countLength = mMidPaint.measureText(count);
float totalLength = mTxtRLength + countL
float start = getMeasuredWidth() / 2 - totalLength / 2;
canvas.drawText(txtH, 100, getMeasuredHeight() / 2, mPaint);
canvas.drawText(count, start + countLength / 2, getMeasuredHeight() / 2, mMidPaint);
canvas.drawText(txtR, start + countLength / 2 + mTxtRLength / 2, getMeasuredHeight() / 2, mPaint);
这样就把次数提示画上去了!来看看效果:
这个…… 呃~~ -__-”
是画上去了,但是
字!体!好!丑!
没事没事,别着急。。我们换一个字体就是了。
Paint字体的改变
1.首先下载一个字体 放到assets文件夹下
2.获取到字体的引用
3.给画笔设置字体
//改变字体,就是这么轻松自如~~
mTypeFace = Typeface.createFromAsset(context.getAssets(), "ifont.ttf")
mMidPaint.setTypeface(mTypeFace)
mPaint.setTypeface(mTypeFace)
看效果图:
吼吼吼~~~ 有点感觉了。
监听器的添加
先来回过头来,大家知道View有setOnClickListener.. 那么我们也来加一个红包成功监听器吧。
在ListView里面增加一个内部接口,添加一个set方法
private OnSuccessListener mOnSuccessL
interface OnSuccessListener {
void onSuccess();
public void setOnSuccessListener(OnSuccessListener onSuccessListener) {
mOnSuccessListener = onSuccessL
在ACTION_UP成果逻辑里面调用onSuccess()… 这就是监听器。。简单吧~就是个回调
现在在MainActivity里使用这个抢红包listView吧~
设置一个监听器,里面写你想要的事件,中几千万的随便写,总比气泡好,,
mListView.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1,datas));
mListView.setOnSuccessListener(new HBListView.OnSuccessListener() {
public void onSuccess() {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setMessage("恭喜中奖!抽到了疼逊聊天气泡!").setNegativeButton("确认", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}).show();
这样就能出现文章顶部预览图的效果了:
如果你喜欢我的博客,请继续关注我,求赞求顶~求吐槽
本项目地址:打开链接
———————————–华丽丽的分割线————————————
处于追求完美的心态,群友 小情歌 对代码做了一些优化,主要有
1.修复上滑也显示红包的bug
2.优化动画事件,在松手的过程中如果继续ACTION_DOWN则放弃动画
3.增加视差特效
修改其实也不复杂 具体看这一段代码:
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
x1 = ev.getX();
y1 = ev.getY();
if (oa != null) {
if (oa.isRunning()) {
oa.cancel();
if (mImageView.getHeight() == 0) {
mImageView.mTime = 0;
case MotionEvent.ACTION_CANCEL:
case MotionEvent.ACTION_UP:
x2 = ev.getX();
y2 = ev.getY();
if (y1 - y2 & 0) {
b = false;
} else if (y2 - y1 & 0) {
int ran = (int) (Math.random() * 100);
Log.e("wing", ran + "");
if (ran & 3) {
mImageView.mTime++;
closeHeader();
mImageView.mTime = 0;
if (mOnSuccessListener != null) {
mOnSuccessListener.onSuccess();
closeHeader();
return super.onTouchEvent(ev);
相信大家都看得懂,这里就不一一说明了。
感谢关注 Ithao123Android频道,是专门为互联网人打造的学习交流平台,全面满足互联网人工作与学习需求,更多互联网资讯尽在 IThao123!
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
产品设计是互联网产品经理的核心能力,一个好的产品经理一定在产品设计方面有扎实的功底,本专题将从互联网产品设计的几个方面谈谈产品设计
随着国内互联网的发展,产品经理岗位需求大幅增加,在国内,从事产品工作的大部分岗位为产品经理,其实现实中,很多从事产品工作的岗位是不能称为产品经理,主要原因是对产品经理的职责不明确,那产品经理的职责有哪些,本专题将详细介绍产品经理的主要职责
IThao123周刊阅读本文后您有什么感想? 已有 0 人给出评价!
游戏排行榜
休闲益智 / 81M
加勒比海盗OL和我们的船长一起去战斗吧,去征服海洋
游戏工具 / 6.8M
专为vivo游戏玩家打造的官方手机游戏平台。
飞行射击 / 6.0M
整体一般的射击游戏,打击感还不错。
休闲益智 / 27.3M
与全球玩家实时对战的休闲游戏,赶快来挑战生存极限吧。
休闲益智 / 3M
糖果连萌经典又新鲜的连连看,甜蜜清新的界面给你清爽的视觉体验,极佳的手感让你爱不释手。
游戏工具 / 970KB
安卓手机游戏必备神器,史上最简单最好用的手游修改器。
动作冒险 / 5.8M
公测礼包火热发放,前1000位玩家还可参与抽奖,话费,iphone6任你拿!
休闲益智 / 5.3M
此萝卜非彼萝卜,沉浸在萝卜的喜悦中。
飞行射击 / 4.4M
紧握你的武器,消灭邪恶的僵尸!体验极致的杀戮快感!
游戏工具 / 1.3M
纯净破解版,保持官方原版状态,无任何提示和广告!
动作冒险 / 5.8M
公测礼包火热发放,前1000位玩家还可参与抽奖,话费,iphone6任你拿!
飞行射击 / 6.0M
整体一般的射击游戏,打击感还不错。
休闲益智 / 27.3M
与全球玩家实时对战的休闲游戏,赶快来挑战生存极限吧。
休闲益智 / 5.3M
此萝卜非彼萝卜,沉浸在萝卜的喜悦中。
游戏工具 / 6.8M
专为vivo游戏玩家打造的官方手机游戏平台。
修改版游戏 / 87M
18种属性相互克制,不再无脑克制。
游戏工具 / 201KB
用手机就能免费获取绝版积分英雄!
休闲益智 / 81M
加勒比海盗OL和我们的船长一起去战斗吧,去征服海洋
飞行射击 / 4.4M
紧握你的武器,消灭邪恶的僵尸!体验极致的杀戮快感!
修改版游戏 / 25.5M
新玩法,体验再次升级,更加轻松酷跑。}

我要回帖

更多关于 电脑qq红包在哪里查看 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信