我正在努力让我的自定义 View 显示在 Android Studio's Layout Editor 中.
我的 View 是带有自定义参数的 RecyclerView 的简单子(monad)类。我用 View.isInEditMode()
仅在实际运行应用程序时使用给定的 attrs
:
public class CustomRecyclerView extends RecyclerView {
public CustomRecyclerView(Context context, AttributeSet attrs) {
super(context, attrs);
if (isInEditMode()) {
return;
}
final TypedArray styledAttributes = context.getTheme().obtainStyledAttributes(attrs, R.styleable.CustomRecyclerView, 0, 0);
/* ... */
}
但是,预览包含此 View 的布局会导致一个空的预览 Pane (甚至不是手机的框架):
如果我用 RecyclerView 替换我的 View ,预览会按预期工作:
我不知道我应该在这里做什么:如果 RecyclerView 正确显示,我在子类的构造函数中所做的就是调用 super()
并在 isInEditMode
时返回> 是真的,那有什么可以解释我的 View 没有显示?
如何让我的自定义 View 显示在 Android Studio 的布局编辑器中?
最佳答案
截至今天,使用 Android Studio 2.1.2 打开同一个项目确实可以在预览 Pane 中成功显示 UI。我只能猜测这是 IDE 中的一个错误,并且在我提出这个问题后已得到修复。
关于android - 无法在 Android Studio 布局编辑器中显示自定义 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37750029/