可变自定义视图和 Android Studio Design/Layout 编辑器

Variable Custom View and Android Studio Design/Layout Editor

有一个简单的Custom_TextView。例如,这是带边框的常规 TextView

有一个 Custom_TextBar,设计如下:Custom_TextView + Custom_TextView + ...

也就是说,这是几个Custom_TextViews,一个接一个,正文是从变长列表中取出来的。名单事先不得而知。

Custom_TextBar = Custom_TextView + Custom_TextView + …

带有文本(和字体大小、边距)的列表被发送到 Custom_TextBar,它绘制了几个 Custom_TextView

一切正常。

问题.

如何强制 Android Studio Design / Layout Editor 显示,例如,一种空矩形来设计片段的其他组件?

例如,假设一个列表有 3 个相同的元素。

我不是第一次注意到通过在 SO 上提问我找到了答案,这不是故意的;)

所以,解决方案:

// in Custom_TextBar

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

public void init(Context context, AttributeSet attrs) {
    // ... everything is as usual
    // ...
    if (textDataList == null) {
        stub();
    }
}

private void stub() {
    // ...
    for (int i = 0; i < 3; i++) {
        View textView = new TextRectangle(getContext(), 
           new TextRectangleData("test" + i), textSize, margins, ...);
        // ...
    }
}