如何在Android中制作调色板的水平列表

时间:2019-06-17 06:11:37

标签: android android-layout

我想实现以下设计。但是看完之后,我认为在垂直view中必须创建很多LinearLayout,其中包含大量复制粘贴。谁能告诉我一种创建此类设计的更好方法?

enter image description here

3 个答案:

答案 0 :(得分:1)

我希望这对您有用。

为下面的“活动”创建类似onCreate()的方法。

@Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        HorizontalScrollView scrollView = new HorizontalScrollView(this);

        int[] colorArray = {Color.RED, Color.GRAY, Color.BLACK, Color.parseColor("#ff00ff"), Color.RED, Color.GRAY, Color.BLACK, Color.parseColor("#ff00ff"), Color.RED, Color.GRAY, Color.BLACK, Color.parseColor("#ff00ff"), Color.RED, Color.GRAY, Color.BLACK, Color.parseColor("#ff00ff"), Color.RED, Color.GRAY, Color.BLACK, Color.parseColor("#ff00ff")};

        LinearLayout linearLayout = new LinearLayout(this);

        setContentView(scrollView);

        linearLayout.setOrientation(LinearLayout.HORIZONTAL);

        scrollView.addView(linearLayout);

        scrollView.setFillViewport(true);


        for (int i = 0; i < colorArray.length; i++) {
            TextView textView = new TextView(this);
            textView.setBackgroundColor(colorArray[i]);
            textView.setLayoutParams(new LinearLayout.LayoutParams(140, 200));
            linearLayout.addView(textView);
        }

    }

采用十六进制格式的颜色代码数组。

答案 1 :(得分:0)

您可以制作一个RecyclerView并用颜色显示一个adapter来显示它。使用LinearLayoutManager.HORIZONTAL进行水平滚动。

答案 2 :(得分:0)

使用RecyclerView并添加水平方向的LinearLayout

mRecyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, true));