日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android +kotlin Banner 轮播广告 获取后台数据

發布時間:2024/3/13 Android 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android +kotlin Banner 轮播广告 获取后台数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

參考網站: (1) https://www.jianshu.com/p/4f0903469bc8 (2) https://blog.csdn.net/YuEOrange/article/details/78779877#commentBoxcompile 'com.youth.banner:banner:1.4.9'<com.youth.banner.Bannerandroid:id="@+id/banner"android:layout_width="match_parent"android:layout_height="300dp"></com.youth.banner.Banner>//初始化Glic依賴包的類 public class GlidApplication extends ImageLoader {//繼承ImageLoader生成displayImage方法@Overridepublic void displayImage(Context context, Object path, ImageView imageView) {//初始化Glide包Glide.with(context).load(path).into(imageView);} }//初始化控件banner = (Banner) findViewById(R.id.banner);//ok網絡請求OkHttpClient okHttpClient = new OkHttpClient();Request request = new Request.Builder().url("http://api.tianapi.com/meinv/?key=2a0024d1f7f558e09936f697580f1643&num=5").build();Call call = okHttpClient.newCall(request);//用OkHttp里面的Call對象打點調用 異步請求數據的抽象方法call.enqueue(new Callback() {//建個集合用來存放圖片url的地址private List<String> picUrlList;//此集合是bean解析過來的集合private List<LadyBean.NewslistBean> list;@Overridepublic void onFailure(Call call, IOException e) {//訪問網絡失敗的方法(自動生成的)}//訪問網絡成功的方法(自動生成的)@Overridepublic void onResponse(Call call, Response response) throws IOException {//把數據流轉換成json字符串String json = response.body().string();Log.e("++++++++","這是訪問到的數據:"+json);//開始用gson解析Gson gson = new Gson();LadyBean ladyBean = gson.fromJson(json, LadyBean.class);//拿到bean類里的集合list = ladyBean.getNewslist();Log.e("++++++++","這是bean集合里的數據:"+list);//設全局此集合專門用來存放圖片url地址的picUrlList = new ArrayList<String>();for (int i = 0; i < list.size(); i++) {//循環把圖片地址添加到string泛型的集合里picUrlList.add(list.get(i).getPicUrl());}Log.e("++++++++","這是專門存放圖片url集合里的數據:"+picUrlList);//子線程不能更新住UI//所以 【必須】 開啟返回主線程的方法runOnUiThread(new Runnable() {@Overridepublic void run() {//把更新主UI視圖的代碼放這里面//.setImagees(把圖片地址集合)//.setImageLoader(new你的Glid類)//.start開始裝逼吧banner.setImages(picUrlList).setImageLoader(new GlidApplication()).start();}});}});

kotlin 寫法

class MainActivity : AppCompatActivity(), OnBannerListener {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)initView()}private fun initView() {var list_path: ArrayList<String>? = nullvar list_title: ArrayList<String>? = null//放圖片地址的集合list_path = ArrayList<String>()//放標題的集合list_title = ArrayList<String>()list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic21363tj30ci08ct96.jpg");list_path.add("http://imglf5.nosdn0.126.net/img/cEpDYmJybXA5V0dOTmNrVVZjVUt3cG93cDlseFpWOXRTV1NCZFVYMk5LcUpVWGpkdncxTldRPT0.jpg?imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2&text=wqkgY2FtZXJhIC8gY2FtY29yZGVyLmxvZnRlci5jb20=&font=bXN5aA==&gravity=southwest&dissolve=30&fontsize=240&dx=8&dy=10&stripmeta=0");list_path.add("http://imglf5.nosdn0.126.net/img/b2tFaE5OSVI4QmlndXhMdkhwdjlGQTdOSUlaWEordnR0SkFNZElqTkVtUk9pcUpXZ3VoMXR3PT0.jpg?imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg");list_path.add("http://ww4.sinaimg.cn/large/006uZZy8jw1faic2e7vsaj30ci08cglz.jpg");list_title.add("好好學習");list_title.add("天天向上");list_title.add("熱愛勞動");list_title.add("不搞對象");//設置內置樣式,共有六種可以點入方法內逐一體驗使用。activity_banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE)//設置圖片加載器,圖片加載器在下方activity_banner.setImageLoader(MyLoader());//設置圖片網址或地址的集合activity_banner.setImages(list_path);//設置輪播的動畫效果,內含多種特效,可點入方法內查找后內逐一體驗activity_banner.setBannerAnimation(Transformer.Default);//設置輪播圖的標題集合activity_banner.setBannerTitles(list_title);//設置輪播間隔時間activity_banner.setDelayTime(3000);//設置是否為自動輪播,默認是“是”。activity_banner.isAutoPlay(true);//設置指示器的位置,小點點,左中右。activity_banner.setIndicatorGravity(BannerConfig.CENTER)//以上內容都可寫成鏈式布局,這是輪播圖的監聽。比較重要。方法在下面。.setOnBannerListener(this)//必須最后調用的方法,啟動輪播圖。.start();}override fun OnBannerClick(position: Int) {Log.i("tag", "你點了第"+position+"張輪播圖");}//自定義的圖片加載器private inner class MyLoader : ImageLoader() {override fun displayImage(context: Context, path: Any, imageView: ImageView) {Glide.with(context).load(path as String).into(imageView)}}}

?

?

總結

以上是生活随笔為你收集整理的Android +kotlin Banner 轮播广告 获取后台数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。