看真正的猫眼效果图

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzIxMDYyMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

接下来看自己写的粗略图(不足的地方是这里是2个切换选项,假设须要3个切换的话,须要自己定义控件,兴许在更新。。。)

源代码地址

自己定义控件(21)---自己定义控件之高仿猫眼小项目(3)

先看主页面xml布局文件--so easy

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.mytogglebutton.MainActivity" > <RelativeLayout
android:layout_width="150dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:background="#CD5555" > <TextView
android:id="@+id/tv_left"
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="15dp"
android:gravity="center"
android:text="购物" /> <TextView
android:id="@+id/tv_up"
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="15dp"
android:background="#ffffff"
android:gravity="center"
android:text="购物" /> <TextView
android:id="@+id/tv_right"
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="15dp"
android:gravity="center"
android:text="美食" />
</RelativeLayout> </RelativeLayout>

MainActivity--看主布局代码--so easy

package com.example.mytogglebutton;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.animation.Animation;
import android.view.animation.TranslateAnimation;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener { private TextView tv_left;
private TextView tv_right;
private TextView tv_up;
//表示是否要从购物切换到美食
private boolean tv_up_left_tran = false;
//表示是否要从美食切换到购物
private boolean tv_up_right_tran = false; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
tv_right.setOnClickListener(this);
tv_left.setOnClickListener(this);
} private void initView() {
tv_left = (TextView) findViewById(R.id.tv_left);
tv_right = (TextView) findViewById(R.id.tv_right);
tv_up = (TextView) findViewById(R.id.tv_up);
} @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tv_left: //表示要从美食切换到购物
if (!tv_up_right_tran) {
TranslateAnimation animation = new TranslateAnimation(
Animation.RELATIVE_TO_SELF, 1.4f,
Animation.RELATIVE_TO_SELF, 0f,
Animation.RELATIVE_TO_SELF, 0.0f,
Animation.RELATIVE_TO_SELF, 0.0f);
animation.setDuration(100);
tv_up.setText("购物");
animation.setFillAfter(true);
tv_up.startAnimation(animation);
}
//切换后,改动状态--能够从左边切换到右边。可是不能从右边切换到左边
tv_up_right_tran = true;
tv_up_left_tran = false;
Toast.makeText(this, ""+tv_up.getText(), 1).show();
break;
case R.id.tv_right:
//表示要从购物切换到美食
if (!tv_up_left_tran) {
TranslateAnimation animation1 = new TranslateAnimation(
Animation.RELATIVE_TO_SELF, 0.0f,
Animation.RELATIVE_TO_SELF, 1.4f,
Animation.RELATIVE_TO_SELF, 0.0f,
Animation.RELATIVE_TO_SELF, 0.0f);
animation1.setDuration(100);
tv_up.setText("美食"); tv_up.startAnimation(animation1);
animation1.setFillAfter(true);
}
//切换后,改动状态--能够从右边切换到左边,可是不能从左边切换到右边
tv_up_left_tran = true;
tv_up_right_tran = false;
Toast.makeText(this, ""+tv_up.getText(), 1).show();
break; default:
break;
}
} }

模仿猫眼电影App一个动画效果的更多相关文章

  1. 用C3中的animation和transform写的一个模仿加载的时动画效果

    用用C3中的animation和transform写的一个模仿加载的时动画效果! 不多说直接上代码; html标签部分 <div class="wrap"> <h ...

  2. 猫眼电影App抓包获取评论数据接口

     之前在CSDN程序人生公众号上看到了这篇文章<邪不压正>评分持续走低,上万条网友评论揭秘,是救救姜文还是救救观众?,文中提到了通过抓包猫眼App发现了评论的数据接口:http://m.m ...

  3. iOS之按钮出现时加一个动画效果

    //按钮出现时的动画效果 + (void)buttonAnimation:(UIButton *)sender { CAKeyframeAnimation *animation = [CAKeyfra ...

  4. 用VUEJS做一个猫眼电影web app

    之前一直在学习原生js,可是发现原生js虽然很好,但是想实现一个稍微复杂一点的项目都很麻烦.直到遇见了vue.js,发现vue是真的很好用,而且很简洁,利用组件化开发能够快速做出项目,所以为了学习vu ...

  5. 用vue开发一个猫眼电影web app

    前言:之前一直在学习原生的javascript,但是无奈功力太浅,学了很长时候也只能写一些简单的小demo,知道遇见了vue,一切都变了,他的双向绑定和组件化思想让我迅速的爱上了他,可是光学不练是没有 ...

  6. Windows Phone使用sliverlight toolkit实现页面切换动画效果

    使用应用时,好多app在页面切换的时候都有一个动画效果,感觉很炫,也大大增加了用户体验,怎么实现呢? 界面的切换,可以用Windows Phone Toolkit中的TransitionService ...

  7. IOS开发-UIView之动画效果的实现方法(合集)

    http://www.cnblogs.com/GarveyCalvin/p/4193963.html 前言:在开发APP中,我们会经常使用到动画效果.使用动画可以让我们的APP更酷更炫,最重要的是优化 ...

  8. 【Android UI设计与开发】第03期:引导界面(三)仿微信引导界面以及动画效果

    基于前两篇比较简单的实例做铺垫之后,这一篇我们来实现一个稍微复杂一点的引导界面的效果,当然也只是稍微复杂了一点,对于会的人来说当然还是so easy!正所谓会者不难,难者不会,大概说的就是这个意思了吧 ...

  9. 深入理解 Vuejs 动画效果

    本文主要归纳在 Vuejs 学习过程中对于 Vuejs 动画效果的各个相关要点.由于本人水平有限,如文中出现错误请多多包涵并指正,感谢.如果需要看更清晰的代码高亮,请跳转至我的个人站点的 深入理解 V ...

随机推荐

  1. 框架—Mybatis入门

    1:Mybatis介绍 MyBatis是一款一流的支持自定义SQL.存储过程和高级映射的一个数据持久层的框架. MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去设置参数和获取检索结果. ...

  2. 使用SimpleDateFormat 将毫秒转换成时分秒 格式:HH:mm:ss

    public static String dateFormatFromMilliSecond(long seconds) {        //初始化format格式    SimpleDateFor ...

  3. 同一SQL语句在PLSQL Developer与SQL * PLUS工具中执行结果不一致

    背景 今天遇到如下问题,同一sql语句在PLSQL Developer与SQL*PLUS工具中执行结果不一致, sql语句如下 SELECT 'GROUPHEALTH_SEND_EMAIL' as i ...

  4. git服务器端安装

    一.服务器端安装 git支持四种传输协议 1.本地协议 2.ssh协议 3.git协议 4.http/s协议 [root@zabbix ~]# cat /etc/redhat-release Cent ...

  5. 条款36:绝不重新定义继承而来的non-virtual函数(Never redefine an inherited non-virtual function)

    NOTE: 1.绝对不要重新定义继承而来的non-virtual函数.

  6. p3386 二分图匹配模板

    https://www.luogu.org/problemnew/show/P3386 可以只做一边的匹配 #include <bits/stdc++.h> using namespace ...

  7. String类型根据逗号分隔转为list

    String ids = pd.getString("IDS");//从pd里取出字符串 List idList = Arrays.asList(ids.split(", ...

  8. 调用hcm接口同步员工数据更新员工信息没有同步到bdm

    原来是更新的时候,baseEmployeeEntity的id为空,这时候需要把原先的baseEmployeeEntity1的id赋值给baseEmployeeEntity,问题解决

  9. 【Kubernetes】Kubernetes的Service外部访问方式:NodePort和LoadBalancer

    Kubernetes的Pod的寿命是有限的,它们不会复活,因此尽管每个Pod都有自己的IP地址,但是这些IP地址是不可靠的,会随着Pod的消亡而消失. 这就带来一个问题,如果一些Pod的集合(称之为b ...

  10. 【python可视化系列】python数据可视化利器--pyecharts

    学可视化就跟学弹吉他一样,刚开始你会觉得自己弹出来的是噪音,也就有了在使用python可视化的时候,总说,我擦,为啥别人画的图那么溜: [python可视化系列]python数据可视化利器--pyec ...