android开发界面的广告_android studio开发界面,点击登陆进行界面切换 - CSDN
  • 前些时候就是别人问我他的android APP怎么做一个广告的欢迎界面,就是过几秒后自动跳转到主界面的实现。 也就是下面这种类似的效果。要插什么广告的话你就换张图吧。   那么我就思考了下,就用了...

    前些时候就是别人问我他的android APP怎么做一个广告的欢迎界面,就是过几秒后自动跳转到主界面的实现。

    也就是下面这种类似的效果。要插什么广告的话你就换张图吧。

     

    那么我就思考了下,就用了android 的一个动画类Animation...其实在Android 的API开发文档上就有的一个东西。自己可以去查下看。就像下面的这个图上面的一样的。也是属于界面View 下的一个类方法...

     

    其实这个东西,怎么讲呢。

    咱主要的话还是来一个小白都看的懂的一个教程类的文章吧。

     

    第一步的话

    咱先开始在咱的项目中新建一个anim的文件夹用来存等会要用到的一些  倒计时 的文字的动态效果的吧。(想想还是截个屏吧,怕有些同志还是看不懂...没别的意思)

            看到了么,就是这样的,在你的Android项目下的存放资源的那个文件夹中新建一个anim文件夹,再新建一个animation_text.xml

    的xml文件,待会就知道有啥用了。

     

    咱下面

    第二步的话,咱就开始添加内容了。

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <set xmlns:android="http://schemas.android.com/apk/res/android" >
     3 
     4     <alpha
     5         android:duration="1000"
     6         android:fromAlpha="0.0"
     7         android:toAlpha="1.0" />
     8 
     9     <scale
    10         android:duration="800"
    11         android:fromXScale="1.5"
    12         android:fromYScale="1.5"
    13         android:pivotX="50%"
    14         android:pivotY="50%"
    15         android:toXScale="1.0"
    16         android:toYScale="1.0" />
    17 
    18 </set>

     上面的效果的话,如果是不知道这些属性是什么意思的话那你可以百度的,我这一一讲的话就感觉有点啰嗦的了。

    咱还是讲正题吧,那上面这些写的有什么用呢。就看下面了,那么我们下面就得开始把那个界面布局出来了吧,然后我们下面就开始吧,

    做一个类似我上面的界面吧。咱就用FrameLayout布局了,如果知道是什么布局方式的话,我觉得应该看的懂吧。

     1 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     android:background="@drawable/page24"
     6     tools:context="${relativePackage}.${activityClass}" >
     7 
     8     <LinearLayout
     9         android:layout_width="wrap_content"
    10         android:layout_height="wrap_content"
    11         android:layout_gravity="right"
    12         android:orientation="horizontal" >
    13 
    14         <TextView
    15             android:layout_width="wrap_content"
    16             android:layout_height="wrap_content"
    17             android:layout_gravity="right"
    18             android:text="广告倒计时:"
    19             android:textColor="#ffffff"
    20             android:textSize="20sp" />
    21 
    22         <TextView
    23             android:id="@+id/textView"
    24             android:layout_width="wrap_content"
    25             android:layout_height="wrap_content"
    26             android:layout_gravity="right"
    27             android:text="5"
    28             android:textColor="#ffffff"
    29             android:textSize="20sp" />
    30 
    31         <TextView
    32             android:layout_width="wrap_content"
    33             android:layout_height="wrap_content"
    34             android:layout_gravity="right"
    35             android:text="s"
    36             android:textColor="#ffffff"
    37             android:textSize="20sp" />
    38     </LinearLayout>
    39 
    40 </FrameLayout>

    下面的话咱就开始要写怎么在app内部实现的方法了吧,这就到了我们的Java的程序天地来了。

    这时候我们就在项目下的src文件下的包里面写上你的Java文件吧。咱慢慢来,别急。

     1 /**
     2  * 
     3  * 1.声明界面
     4  * 2.定义变量
     5  * 3.调用类Animation
     6  * 4.写方法让它动起来
     7  * @author Rain
     8  *
     9  */
    10 public class WelcomeActivity extends Activity{
    11 
    12      // 声明控件对象
    13     private TextView textView;
    14     //声明时间有多少;
    15     private int count = 5;
    16     private Animation animation;
    17 
    18     @Override
    19     protected void onCreate(Bundle savedInstanceState) {
    20         super.onCreate(savedInstanceState);
    21         // 下面的话就是去除标题的方法
    22         requestWindowFeature(Window.FEATURE_NO_TITLE);
    23         setContentView(R.layout.activity_welcome);
    24         // 初始化控件对象textView
    25         textView = (TextView) findViewById(R.id.textView);
    26         animation = AnimationUtils.loadAnimation(this, R.anim.animation_text);
    27         handler.sendEmptyMessageDelayed(0, 1000);
    28     
    29 
    30     }
    31 
    32     //咱在写一个计算Welcome界面的广告时间结束后进入主界面的方法
    33     private int getCount() {
    34         count--;
    35         if (count == 0) {
    36             Intent intent = new Intent(this, MainActivity.class);
    37             startActivity(intent);
    38             finish();
    39         }
    40         return count;
    41     }
    42 
    43     //进行一个消息的处理
    44     @SuppressLint("HandlerLeak")
    45     private Handler handler = new Handler() {
    46         public void handleMessage(android.os.Message msg) {
    47             if (msg.what == 0) {
    48                 textView.setText(getCount()+"");
    49                 handler.sendEmptyMessageDelayed(0, 1000);
    50                 animation.reset();
    51                 textView.startAnimation(animation);
    52             }
    53 
    54         };
    55 
    56     };
    57 
    58 }

    用的时候可得注意导入下包哈。

    这样一个会自动跳转到主界面的广告界面就完成了。

    谢谢观看。大家可以畅所欲言,发表看法,吾等虚心接受的。

     

    展开全文
  • 一、Android studio的下载与配置Android Studio是Google发布的用于Android开发平台。系统基于 IntelliJ IDEA。类似 EclipseADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。Android Studio的...

    一、Android studio的下载与配置

    Android Studio是Google发布的用于Android的开发平台。系统基于 IntelliJ IDEA。类似 EclipseADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。Android Studio的开发环境和模式更加的丰富和便捷,能够支持多种语音,还可以为开发者提供测试工具和各种数据分析。(以上来源于百度百科)
    因此,他的下载页面www.android.com也是一个外国网站需要翻墙才能进行下载。但是在网络发达的当下,有什么资源是在网上找不到的呢?在这里,自己就先贴一个百度软件中心的下载地址。百度软件中心

    二、Android的界面-activity

    在Android的运行过程中,我们首先看到的会是一个接一个的页面,点一下某个地方就会跳到某个页面上去。这一个个的页面,常常被称作一个个的activity。但这并不是指每一个界面都是一个activity的文件,activity也不仅仅只是一个页面。activity是一个容器,它是一个view类的派生类(比如Button, listview,imageview)的container。自己并不喜欢这样的解释方法,过度的专业显得对人十分的不友好。
    activity直译过来就是“活动”。与其去追究其深层的意义,不如就使用它的直译显得更加直观与明确。activity就像是进行现实中各式各样的活动的举办一样。举个例子的话,就像是策划一场晚会。如果你要中规中矩的策划一场晚会,最不可或缺的就是晚会的策划案和晚会的会场。对于activity来说,用class文件就相当于是晚会的策划书,而xml则像是会场。接下来,就让我们从class文件开始,一点一点的来探索activity。

    1.activity的生命周期

    在写晚会策划的时候我们先想的是什么呢?对,晚会的流程,你得邀请他人、准备酒水、布置会场、准备节目,以及晚会结束后的收拾等等。一个party有一个从准备到收拾的过程,一个activity也有一个从 onCreate(Bundle icicle)到onDestory()生命周期。具体来说,是有
    - protected void onCreate(Bundle icicle);
    - protected void onStart();
    - protected void onRestart();
    - protected void onResume();
    - protected void onFreeze(Bundle outIcicle);
    - protected void onPause();
    - protected void onStop();
    - protected void onDestroy();
    onCreate就是晚会的准备阶段,晚会会从准备开始,activity也会从onCreate方法开始。对button、bar等等组件的设置就是写在这个方法中的,就像是在晚会的准备阶段布置会场、检查开关一样。
    onStart不用我说,小伙伴们都能看的出来,晚会开始啦,此时我们再进行一些事情,比如致辞。之后我们就会一直进行晚会,即是onResume();的阶段
    在一场大的晚会中,我们可能会不止一个会场,可能会跑去另外的会场进行别的活动。这个时候,这里的会场活动就会暂停,就是activity的onPause的阶段。具体来说,就是在别的activity遮盖在这个activity之上的时候,这个activity会处于onPause的阶段。等我们回来后就会继续进行,返回到onResume的方法。
    这里用一张不知道被多少人用过的图来详细描述这一过程。
    activity的生命周期图

    2.activity 之间的数据传输—Intent

    在上面我们曾经说过,我们activity中是可以跳到别的activity中的,而且是可以带着参加晚会的人们一起去,回来的时候也能带着人们一块回来。而带着他们在activity之间跑来跑去的小车,就是我们的Intent。

    页面跳转时发送数据代码
    Intent intent = new Intent(MainActivity.this, SplashActivity.class);/*新建intent对象,两个参数分别是context和要跳转到的class*/
    intent.putExtra(USER_INFO, userInfo);//传输对象。这里传输的对象都需要序列化(即对象需要继承Serializable)
    intent.putExtra("TITLE", title);//调用intent的函数,两个参数是String格式的Key(或者说是一个ID标志)和你要传输的数据
    startActivity(intent);//启动intent
    接受其他页面发来的数据代码
    Intent intent = getIntent();//与new时不同的方法。
    if(intent != null){
    String title=intent.getStringExtra(SplashActivity.TITLE);//使用get方法获得数据。
    UserInfo userInfo =(UserInfo)intent.getSerializableExtra(SplashActivity.USER_INFO);//获得对象的方法。注意需要序列化
    }

    值得一提的是,除了上面所使用的getStringExtra以外,根据数据的不同还有getIntExtra等方法,他们的两个参数一个是在传输时输入的Key,一个是default。

    3.在activity中与其他activity进行数据互动

    在一场晚会之中,总会有人离开会场去做一些别的事情,比如上厕所,比如“不可描述”。这个时候,显示的activity还是原来的activity,只是有几个数据出去啪啪啪了,这个时候,我们在Java文件中setResult(RESULT_CODE,intent);的方法会专门显示这一情况这个方法有两个参数,一个是RESULT_CODE,这是一个int型的值,是数据的名牌,方便我们找到他进行操作的时候使用的的,另外一个就是我们在上面写的小车Intent,发送的方式和上面的也是一模一样的。用这个方法,我们就可以把这些要出去的数据发送出去。
    到了这些数据要到的activity的时候,我们则需要使用startActivityForResult(intent, REQUEST_CODE); 方法来接收发送过来的数据。跟发送的一方一样,也是一个int型的REQUEST_CODE的名牌和一个Intent小车构成的。不过要注意的是,这回的Intent是放在前面的。
    有了名牌,我们就需要对这名牌来处理这些发送的文件了,这是就需要重写父类中的onActivityResult()方法,具体如下:

    数据传输的分类处理方法
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
            if(requestCode == REQUEST_CODE && resultCode == MainActivity.RESULT_CODE){
               if(data != null){
                   String title = data.getStringExtra(TITLE);
                   mTextView.setText(title);
               }
            }
        }

    从代码里我们可以看到,只有当两个名牌是我们设定的值的时候才会进行相应的处理,这就保障了针对不同的数据的传输进行不同的处理。

    4.附注:页面运行的调控方法——Handler

    在进行变成的时候,我们常常需要让一些操作停滞一段时间,就像是应用正式运行前的广告页面那样。
    此时我们就需要使用Handler的postDelayed()方法,方式如下:

    延时器
            Handler mHandler = new Handler();
            mHandler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    //这里放你要运行的代码
                }
            }, 1000);//这里的数字是你要停滞的时间,此处为一秒

    迷の下期预告:这一篇,自己写了与布局相关的组件代码,在下一篇中,自己将更系统而详细的谈一谈关于布局和组件的二三事。将会写出如何将布局文件和Java文件相连接、各个组件的属性及使用方法、还会写一写布局的优化。

    展开全文
  • 这个广告界面主要做的就是倒计时功能,当然,中间也出现了一些问题,秉着遇到问题解决问题的原则,慢慢的做出来了,可能也不太完善,先这样。 之前做的app启动页与主界面做在一个activity中了,通过visibility属性...

    这个广告界面主要做的就是倒计时功能,当然,中间也出现了一些问题,秉着遇到问题解决问题的原则,慢慢的做出来了,可能也不太完善,先这样。

    之前做的app启动页与主界面做在一个activity中了,通过visibility属性加上动画效果做的启动页,添加的广告页如果也写在一起,想想头就大了,果断单独又提出了一个acitivity,将启动页与广告页放在了一起。

    遇到的问题:

    1.状态栏的问题——启动页的image的颜色跟广告页的颜色差距太大,用的同一个image,状态栏不能自动变换颜色:

    解决:将状态栏颜色至为透明。

    2.定时器的问题——在点击完广告链接之后,定时器还在走,之后自动跳转页面:

    解决:handler.removeMessages(0);

    3.Bitmap传值的问题:

    开始将启动页与广告页做在了两个activity中,本想要的效果是在启动页时开始下载图片,当图片下载完成时跳转到广告页显示,这就涉及到了在两个activity中传递Bitmap的问题,我直接用

    intent.putExtra("BITMAP",bitmap);

    在取值的页面

    Bitmap bitmap = getIntent().getParcelableExtra("BITMAP");

    也不报错,数据大小也能获取到,但就是显示不出来数据,网上说是不能传大于40k的,具体也没研究,就改成了在一个activity中显示了。

    传递Bitmap参考:http://blog.csdn.net/xueerfei008/article/details/23046341


    以下附上代码:(删除了请求数据的部分)

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    
        <ImageView
            android:id="@+id/welcome"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="fitXY"
            android:src="@drawable/welcome_logo" />
    
        <LinearLayout
            android:id="@+id/lin_clock"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:layout_marginTop="25dp"
            android:orientation="horizontal"
            android:visibility="gone" >
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:text="广告倒计时:"
                android:textColor="@color/app_color"
                android:textSize="20sp" />
    
            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:text="5"
                android:textColor="@color/app_color"
                android:textSize="20sp" />
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:text="秒"
                android:textColor="@color/app_color"
                android:textSize="20sp" />
        </LinearLayout>
    
    </FrameLayout>
    java代码:
    **
     * app初始化页面
     */
    @ParentViewInject(R.layout.activity_first)
    public class FirstActivity extends MyActivity {
    	public static String ISADV = "isAdv";
    	@ChildViewInject(value = R.id.welcome, tag = "遮盖层")
    	private ImageView mWelcome;
    	@ChildViewInject(value = R.id.textView, tag = "倒计时")
    	private TextView textView;
    	@ChildViewInject(value = R.id.lin_clock, tag = "倒计时")
    	private LinearLayout lin_clock;
    
    
    	public static String ADV_IMAGE_NAME = "adv_image";
    
    	// 是否显示广告页
    	private String flag;
    	// 跳转的url
    	private String url;
    	// 广告秒数
    	private int count;
    	// 广告页本地地址
    	private String filePath;
    	private Bitmap bitmap;
    	private Animation animation;
    	/**
    	 * 做定时器的handler
    	 */
    	private Handler handler = new Handler() {
    		public void handleMessage(android.os.Message msg) {
    			if (msg.what == 0) {
    				textView.setText(getCount() + "");
    				handler.sendEmptyMessageDelayed(0, 1000);
    				animation.reset();
    				textView.startAnimation(animation);
    			}
    
    
    		};
    
    
    	};
    	/**
    	 * 声明处理动画的handler
    	 */
    	private Handler handler_animation = new Handler() {
    
    
    		@Override
    		public void handleMessage(Message msg) {
    			super.handleMessage(msg);
    			switch (msg.what) {
    			case 1:
    				lin_clock.setVisibility(View.VISIBLE);
    				mWelcome.setImageBitmap(bitmap);
    				animation = AnimationUtils.loadAnimation(FirstActivity.this,
    						R.anim.animation_text);
    				handler.sendEmptyMessageDelayed(0, 1000);
    				break;
    
    
    			case 2:
    				break;
    			}
    		}
    
    
    	};
    
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		setTranslucentStatus();
    		super.onCreate(savedInstanceState);
    		//初始化的时候取数据
    		//flag =;
    		//url = ;
    		//count = ;
    		//filePath ;
    		bitmap = BitmapFactory.decodeFile(filePath);
     //为了让app启动页正常显示,加了延时-该延时正常是下载图片的时间,这里将图片下载到了本地,每次启动时显示的都是上次加载的
    new Handler().postDelayed(new Runnable() {
    
    public void run() {
    
    if ("1".equals(flag) && bitmap != null) {
    handler_animation.sendEmptyMessage(1);
    if (!TextUtils.isEmpty(url)) {//广告图片点击之后的响应
    mWelcome.setOnClickListener(new OnClickListener() {
    
    @Override
    public void onClick(View v) {
    Intent intent = new Intent(FirstActivity.this,
    WebActivity.class);
    intent.putExtra(
    HomeWebFragment.EXTRA_PARAM_URL, url);
    intent.putExtra(ISADV, true);
    IntentUtil.startNewActivityWithData(
    (Activity) FirstActivity.this, intent);
    handler.removeMessages(0);//关键-将定时器remove掉,不然跳转之后还在记时
    finish();
    }
    });
    }
    } else {
    turnMainAnXinActivity();
    }
    }
    
    }, 1000);
    
    }
    
    /**
    * 跳转到主界面
    */
    private void turnMainAnXinActivity() {
    Intent intent = new Intent(this, MainAnXinActivity.class);
    startActivity(intent);
    finish();
    }
    
    
    private int getCount() {
    count--;
    if (count == 0) {
    turnMainAnXinActivity();
    }
    return count;
    }
    
    
    /**
    * 广告页状态栏设置为透明(在setContentView()方法之前使用)
    */
    private void setTranslucentStatus() {
    // 4.4以上支持
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    // 透明状态栏
    getWindow().addFlags(
    WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    // 透明导航栏
    // getWindow().addFlags(
    // WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
    // SystemStatusManager tintManager = new SystemStatusManager(this);
    // tintManager.setStatusBarTintEnabled(true);
    // // 设置状态栏的颜色
    // tintManager.setStatusBarTintResource(R.color.trans);
    // getWindow().getDecorView().setFitsSystemWindows(true);
    }
    }
    }



    展开全文
  • import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; import android.view...
    package s1.ppp.com;
    
    import android.content.Intent;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.support.v7.app.AppCompatActivity;
    import android.view.WindowManager;
    
    public class StartActivity extends AppCompatActivity {
    
    
        //向主进程发送消息的句柄
        private Handler handler = new Handler(){
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
                next();
            }
        };
    
        /**
         * 自定义方法
         * 启动登录界面
         */
        private void next() {
            Intent intent = new Intent(this,LoginActivity.class);
            startActivity(intent);
            finish();
        }
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_start);
    
    
    
            //去掉状态栏
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    
            //延时3秒发送一个消息给主进程,让主进程执行next()方法
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    handler.sendEmptyMessage(0);
    
                }
            }, 4000);
    
    
    
    
        }
    }
    
    

    布局文件

    
    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".StartActivity">
    
        <ImageView
            android:id="@+id/iv_start"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:srcCompat="@mipmap/start" />
    
        <TextView
            android:id="@+id/tv_start"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
    
            android:layout_marginStart="8dp"
    
            android:layout_marginEnd="8dp"
    
            android:layout_marginBottom="16dp"
            android:text="App By 热带雨林"
            android:textAlignment="center"
            android:textColor="@color/colorAccent"
            android:textSize="14sp"
            app:layout_constraintBottom_toBottomOf="@+id/iv_start"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent" />
    
    
    
    </android.support.constraint.ConstraintLayout>
    
    展开全文
  • Android实现可轮播循环和手动滑动循环的广告界面 源码下载 经常会看到有一些app的banner界面可以实现循环播放多个广告图片和手动滑动循环。本以为单纯的ViewPager就可以实现这些功能。但是蛋疼的事情来了,ViewPager...
  • 前些时候就是别人问我他的android APP怎么做一个广告的欢迎界面,就是过几秒后自动跳转到主界面的实现。 也就是下面这种类似的效果。要插什么广告的话你就换张图吧。 那么我就思考了下,就用了android 的一个...

    前些时候就是别人问我他的android APP怎么做一个广告的欢迎界面,就是过几秒后自动跳转到主界面的实现。

    也就是下面这种类似的效果。要插什么广告的话你就换张图吧。

     

    那么我就思考了下,就用了android 的一个动画类Animation...其实在Android 的API开发文档上就有的一个东西。自己可以去查下看。就像下面的这个图上面的一样的。也是属于界面View 下的一个类方法...

     

    其实这个东西,怎么讲呢。

    咱主要的话还是来一个小白都看的懂的一个教程类的文章吧。

     

    第一步的话

    咱先开始在咱的项目中新建一个anim的文件夹用来存等会要用到的一些  倒计时 的文字的动态效果的吧。(想想还是截个屏吧,怕有些同志还是看不懂...没别的意思)

            看到了么,就是这样的,在你的Android项目下的存放资源的那个文件夹中新建一个anim文件夹,再新建一个animation_text.xml

    的xml文件,待会就知道有啥用了。

     

    咱下面

    第二步的话,咱就开始添加内容了。

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <set xmlns:android="http://schemas.android.com/apk/res/android" >
     3 
     4     <alpha
     5         android:duration="1000"
     6         android:fromAlpha="0.0"
     7         android:toAlpha="1.0" />
     8 
     9     <scale
    10         android:duration="800"
    11         android:fromXScale="1.5"
    12         android:fromYScale="1.5"
    13         android:pivotX="50%"
    14         android:pivotY="50%"
    15         android:toXScale="1.0"
    16         android:toYScale="1.0" />
    17 
    18 </set>

     上面的效果的话,如果是不知道这些属性是什么意思的话那你可以百度的,我这一一讲的话就感觉有点啰嗦的了。

    咱还是讲正题吧,那上面这些写的有什么用呢。就看下面了,那么我们下面就得开始把那个界面布局出来了吧,然后我们下面就开始吧,

    做一个类似我上面的界面吧。咱就用FrameLayout布局了,如果知道是什么布局方式的话,我觉得应该看的懂吧。

     1 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     android:background="@drawable/page24"
     6     tools:context="${relativePackage}.${activityClass}" >
     7 
     8     <LinearLayout
     9         android:layout_width="wrap_content"
    10         android:layout_height="wrap_content"
    11         android:layout_gravity="right"
    12         android:orientation="horizontal" >
    13 
    14         <TextView
    15             android:layout_width="wrap_content"
    16             android:layout_height="wrap_content"
    17             android:layout_gravity="right"
    18             android:text="广告倒计时:"
    19             android:textColor="#ffffff"
    20             android:textSize="20sp" />
    21 
    22         <TextView
    23             android:id="@+id/textView"
    24             android:layout_width="wrap_content"
    25             android:layout_height="wrap_content"
    26             android:layout_gravity="right"
    27             android:text="5"
    28             android:textColor="#ffffff"
    29             android:textSize="20sp" />
    30 
    31         <TextView
    32             android:layout_width="wrap_content"
    33             android:layout_height="wrap_content"
    34             android:layout_gravity="right"
    35             android:text="s"
    36             android:textColor="#ffffff"
    37             android:textSize="20sp" />
    38     </LinearLayout>
    39 
    40 </FrameLayout>

    下面的话咱就开始要写怎么在app内部实现的方法了吧,这就到了我们的Java的程序天地来了。

    这时候我们就在项目下的src文件下的包里面写上你的Java文件吧。咱慢慢来,别急。

     1 /**
     2  * 
     3  * 1.声明界面
     4  * 2.定义变量
     5  * 3.调用类Animation
     6  * 4.写方法让它动起来
     7  * @author Rain
     8  *
     9  */
    10 public class WelcomeActivity extends Activity{
    11 
    12      // 声明控件对象
    13     private TextView textView;
    14     //声明时间有多少;
    15     private int count = 5;
    16     private Animation animation;
    17 
    18     @Override
    19     protected void onCreate(Bundle savedInstanceState) {
    20         super.onCreate(savedInstanceState);
    21         // 下面的话就是去除标题的方法
    22         requestWindowFeature(Window.FEATURE_NO_TITLE);
    23         setContentView(R.layout.activity_welcome);
    24         // 初始化控件对象textView
    25         textView = (TextView) findViewById(R.id.textView);
    26         animation = AnimationUtils.loadAnimation(this, R.anim.animation_text);
    27         handler.sendEmptyMessageDelayed(0, 1000);
    28     
    29 
    30     }
    31 
    32     //咱在写一个计算Welcome界面的广告时间结束后进入主界面的方法
    33     private int getCount() {
    34         count--;
    35         if (count == 0) {
    36             Intent intent = new Intent(this, MainActivity.class);
    37             startActivity(intent);
    38             finish();
    39         }
    40         return count;
    41     }
    42 
    43     //进行一个消息的处理
    44     @SuppressLint("HandlerLeak")
    45     private Handler handler = new Handler() {
    46         public void handleMessage(android.os.Message msg) {
    47             if (msg.what == 0) {
    48                 textView.setText(getCount()+"");
    49                 handler.sendEmptyMessageDelayed(0, 1000);
    50                 animation.reset();
    51                 textView.startAnimation(animation);
    52             }
    53 
    54         };
    55 
    56     };
    57 
    58 }

    用的时候可得注意导入下包哈。

    这样一个会自动跳转到主界面的广告界面就完成了。

    谢谢观看。大家可以畅所欲言,发表看法,吾等虚心接受的。

     

    转载于:https://www.cnblogs.com/Mr-stockings/p/8127616.html

    展开全文
  • 开发App过程中,一般我们会看见首页会有个欢迎界面,有时候会放入个呕吐的广告在这,几秒之后再跳转或者点击跳转按钮之后再进入我们的程序页面,那么这里是如何实现的呢?这里介绍一下postDelayed。这是一种可以...
  • 在我们APP的开发过程中,启动页面是绕不开的,广告页面说不定,但是不得不说,这两个界面都是经常要用到的。接下来我记录一下我的实现过程。项目架构为MVP。   那么先看看我们的需求和流程:(当然这也是可以根据...
  • 在我们APP的开发过程中,启动页面是绕不开的,广告页面说不定,但是不得不说,这两个界面都是经常要用到的。接下来我记录一下我的实现过程。项目架构为MVP。  那么先看看我们的需求和流程:(当然这也是可以根据...
  • 和国内的腾讯广告联盟不同的是,该平台的Android端接入广告主要有三种广告类型,一是banner广告(横幅广告),二是插屏广告,三是原生广告,四是激励广告。而是国内的腾讯广告联盟主要是开屏广告、banner广告、插屏...
  • 打开任意的一个app时,其中大部分都会显示一个启动界面,于我而言印象最深的就是微信的大地球了,启动界面通常情况下展示出的都是自家的logo,但也有甚者则直接把广告放到了上面。 在这里为大家提供两种不同的设置...
  • 第一帖:android应用开发之欢迎界面(AlphaAnimation) 题记:毕业将近两个月了,在公司单干android应用开发(暂归新闻类应用吧)。接触了不少开源的项目,在网上遇到不少帮助过我的人,在此对大家的热情帮助表示...
  • 前 言 对于个人开发者来说,独立开发一款基于网络App并且上线提供用户...而在Android开发领域,有Google的子公司AdMob的广告可以在Android系统里进行投放。不过国外的广告不是很适合国内的环境,而国内的腾讯广告联...
  • 前面在论坛里发了《Android学习及如何利用android来赚钱》帖子后,收到不少android开发者的回复,加上整理到博客里的回复,很多人问到如何在应用中加入广告,今天刚好有一个新的小应用要加广告,一起算写一篇总结。...
  • 前言大家好,我是 Vic,今天给大家带来AndroidStudio制作欢迎界面与应用图标的概述,希望你们喜欢欢迎界面与应用图标本项目使用Android Studio 3.0.1作为开发工具activity_splash.xml创建了一个activity_splash.xml...
  • 作为一名Android小白,面临着Android期末项目化考核,做学生嘛,肯定是要有取舍的,当听到老师说期末考试是笔试的时候,我直接就不听课了,听了有啥用,反正又不需要做项目,没想到快到期末了突然又要改项目化考核,...
  • [14本经典Android开发教程]-10-深入浅出Android—Android开发经典教材 -------------------------------------------------- Android模拟器 建立Android程序 GUI界面 XML 菜单 Activity .... ----------------------...
  • 要去广告的app: 追杀神器3.75 反编译工具: AndroidKiller1.3.1 查看布局工具: UIAnimationView 查看源码好工具: jadx 底部打包地址。二、 思路获取到广告控件,隐藏广告控件。 要去除的有: 首页的游戏中心(其余的...
  • Android 仿微信之主页面实现篇Android 仿微信之界面导航篇Android 高仿QQ 好友分组列表Android 高仿QQ 界面滑动效果Android 高仿QQ 登陆界面Android 对Path的旋转效果的拓展Android高仿360安全卫士布局源码Android ...
  • Android创建启动画面

    2013-11-04 17:59:45
    每个Android应用启动之后都会出现一个Splash启动界面,显示产品的LOGO、公司的LOGO或者开发者信息。如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间。  1.制作...
1 2 3 4 5 ... 20
收藏数 12,737
精华内容 5,094
关键字:

android开发界面的广告