GridLayout + Animation 实现 Android 仿超级课程表“发现”全屏宫格图标弹出动画

本文介绍了如何在Android中实现类似超级课程表「发现」页面的全屏宫格图标动画。通过使用GridLayout配合Handler进行异步消息处理,实现流畅的动画效果。关键步骤包括布局设计、图标动画定义以及底部关闭按钮的交互。注意避免图标在动画过程中超出父布局导致显示问题。
摘要由CSDN通过智能技术生成

关于全屏宫格图标,超级课程表的“发现”是目前我见过的最好的解决方案,流畅的动画打破了布局单一带来的死板气氛。下面就来介绍这样的动画是如何实现的。


首先创建一个activity叫BiaoDiscoverActivity

此处用到了Handler,Handler主要用于异步消息的处理:当发出一个消息之后,首先进入一个消息队列,发送消息的函数即刻返回,而另外一个部分在消息队列中逐一将消息取出,然后对消息进行处理,也就是发送消息和接收消息不是同步的处理。 这种机制通常用来处理相对耗时比较长的操作


public class BiaoDiscoverActivity extends BaseActivity {

	@Bind(R.id.ivBiaoClose)
	ImageView mIvClose;
	@Bind(R.id.rll_found_note)
	AutoRelativeLayout mrllNote;
	@Bind(R.id.rll_found_exam_time)
	AutoRelativeLayout mrllExamTime;
	@Bind(R.id.rll_found_class_room_search)
	AutoRelativeLayout mrllClassroom;
	@Bind(R.id.rll_found_score_search)
	AutoRelativeLayout mrllScore;
	@Bind(R.id.rll_found_super_act)
	AutoRelativeLayout mrllSuperAct;
	@Bind(R.id.rll_found_super_group)
	AutoRelativeLayout mrllSuperGroup;
	@Bind(R.id.rll_found_train_tickets)
	AutoRelativeLayout mrllTrainTickets;
	@Bind(R.id.rll_found_air_tickets)
	AutoRelativeLayout mrllAirTickets;
	@Bind(R.id.rll_found_school_recuit)
	AutoRelativeLayout mrllSchoolRecuit;
	@Bind(R.id.rll_found_house_rent)
	AutoRelativeLayout mrllHouseRent;
	@Bind(R.id.rll_found_entertainment_class)
	AutoRelativeLayout mrllEntertainment;

	//宫格图标
	private List<AutoRelativeLayout> rllList;
	private Handler handler;

	@Override
	protected BasePresenter createPresenter() {
		return null;
	}

	@Override
	protected int provideContentViewId() {
		return R.layout.activity_biao_discover;
	}


	@Override
	public void initView() {
		super.initView();
		initRll();
		initGrid();
		handler = new Handler();
	}

	private synchronized void initRll() {
		rllList = new ArrayList<>();
		rllList.add(mrllNote);
		rllList.add(mrllExamTime);
		rllList.add(mrllClassroom);
		rllList.add(mrllScore);
		rl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值