现在常常在手机或是电脑网页中会在页面中的一部分会看到不同的广告,
这篇我们运用banner在画面中显示广告并自动换页,banner是用来图片轮播的方式来展示
首先要先在Gradle Scripts/build.gradle(.app)的dependencies下新增banner
implementation 'com.youth.banner:banner:1.4.10'
现在xml档设定好要将banner位置放在哪里:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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=".MainActivity">
<com.youth.banner.Banner
android:id="@+id/banner"
android:layout_alignParentBottom="true"
android:layout_width="match_parent"
android:layout_height="150dp" />
</RelativeLayout>
因为新增的图片是由网路上引用的,所以在app/manifests/AndroidManifest.xml里新增
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
接着回到MainActivity.java里设定
package com.example.ad;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.youth.banner.Banner;
import com.youth.banner.loader.ImageLoader;
import com.youth.banner.loader.ImageLoaderInterface;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private Banner banner;
private List<String> mListImage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Banner banner = (Banner)findViewById(R.id.banner);
ArrayList<String> images = new ArrayList<>();
//将想要轮播的广告图片网址新增
images.add("https://i.ytimg.com/vi/HuhkUIYRryA/maxresdefault.jpg");
images.add("https://mrmad.com.tw/wp-content/uploads/2021/03/apple-iphone-12-cook-and-fumble.jpg");
banner.setImageLoader(new GlideIamgeLoader());
banner.setImages(images);
//想要多久自动换页
banner.setDelayTime(3000);
banner.start();
}
public class GlideIamgeLoader extends ImageLoader {
@Override
public void displayImage(Context context, Object path, ImageView imageView){
Glide.with(context).load(path).into(imageView);
}
}
}
这样就可以了
<<: Day 21 | 状态管理套件 MobX - 到底什麽是状态管理
建立结构化的 Log 系列文章 (1/4) - Elastic Common Schema 结构化 ...
启动Redis Server # 复制安装档内的redis.conf 到自己指定的路径下 cp /h...
前言 今天来跟大家聊聊一个轻松的话题,与先前我们提过关於时间的主题有点关系,就是当我们听到「有空再说...
学资安需要会写程序吗? 最近才看到PTT有人问了类似的问题, 大致上的内容就是询问说想走资安,但不会...
k8s - 洗掉 kubernetes 环境重新来过 参考资料 参考资料:在 Ubuntu 上重新安...