wei于人海 2023-03-05 21:14 采纳率: 0%
浏览 46
已结题

XBanner的使用

XBanner的一些使用问题
我想把指示器即小圆点悬浮在图片的下方,是需要自定义banner布局嘛,如果是这这样的话,该怎么样做?
我目前的效果

img

我想达成的效果

img

  • 写回答

3条回答 默认 最新

  • pzzhao 2023-03-05 22:42
    关注

    该回答引用自ChatGPT

    XBanner默认的指示器是在图片的下方,如果您想要将指示器悬浮在图片的下方,可以通过自定义布局来实现。具体做法如下:

    在项目的layout文件夹中创建一个自定义的布局文件,比如custom_xbanner_layout.xml。

    在custom_xbanner_layout.xml文件中添加一个LinearLayout,设置它的orientation为vertical,并设置它的gravity为bottom。然后在LinearLayout下面添加一个XBanner控件和一个指示器控件,如下所示:

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="bottom">
        <com.stx.xhb.androidx.XBanner
            android:id="@+id/banner"
            android:layout_width="match_parent"
            android:layout_height="200dp"/>
        <com.stx.xhb.androidx.commonindicator.CommonNavigator
            android:id="@+id/indicator"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"/>
    </LinearLayout>
    

    在Activity或Fragment中,使用自定义的布局文件作为XBanner的布局,如下所示:

    xbanner = findViewById(R.id.banner);
    indicator = findViewById(R.id.indicator);
    xbanner.setBannerData(imageUrls);
    xbanner.loadImage((banner, model, view, position) -> {
        Glide.with(this).load(model.toString()).into((ImageView) view);
    });
    indicator.setNavigator(new CircleNavigator(this));
    xbanner.setPageTransformer(Transformer.Default);
    xbanner.setPageIndicator(indicator);
    

    注:上面的代码中,imageUrls是图片的地址集合,Glide是图片加载库,CircleNavigator是指示器的样式。
    通过以上步骤,您就可以将指示器悬浮在图片的下方了。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月20日
  • 创建了问题 3月5日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀