相关疑难解决方法(0)

如何使用RecyclerView构建Horizo​​ntal ListView?

我需要在我的Android应用程序中实现水平列表视图.我做了一些研究并遇到了如何在Android中制作水平ListView?Android中的水平ListView?然而,这些问题是在Recyclerview发布之前提出的.现在使用Recyclerview有更好的方法来实现吗?

android android-layout android-recyclerview

305
推荐指数
8
解决办法
27万
查看次数

在片段中绘制多个对象图

我想要绘制一个图表,就像附加的图像一样,但是我在绘制右边的红色垂直矩形以及将其他对象放在顶部时遇到了问题.最大的问题是与Android设备的众多不同屏幕尺寸有关.我完全理解我在这个过程中想要实现的目标,其中包括以下目标.所有帮助将受到高度赞赏.

  • 屏幕两侧有1个红色矩形(右侧我不知道如何在那里画画)
  • 红色垂直矩形之间的7个灰色框需要在宽度上相等
  • 黑色垂直线需要位于矩形之间,就像上图中一样
  • 显示数字的文本框需要位于每个灰色矩形的中心以及小红色矩形
  • 我也想在将来重复使用图表,这样我就可以随时用红色或黑色填充小盒子

在此输入图像描述

布局

<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <my.package.name.ComplexDiagram
            android:layout_width="match_parent"
            android:layout_height="65dp"
            android:layout_centerVertical="true"
            />
    </RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

Java的

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;

public class ComplexDiagram extends View {


    private int measuredWidth, measuredHeight;
    private Paint mGreyRectPaint, mBlackLinePaint, mRedRectPaint;
    private RectF mGreyRect, mBlackLineF, mRedRectF;


    public ComplexDiagram(Context context) {
        super(context);
        init(context, null, 0);
    }

    public ComplexDiagram(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context, attrs, 0);
    }

    public ComplexDiagram(Context context, AttributeSet attrs, …
Run Code Online (Sandbox Code Playgroud)

java android android-shape

11
推荐指数
1
解决办法
252
查看次数