我很难让我的自定义视图显示在Android Studio's Layout Editor。
我的视图是RecyclerView的一个简单子类,带有自定义参数。我仅在实际运行应用时使用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);
/* ... */
}
但是,预览包含此视图的布局会导致一个空的预览窗格(甚至不是手机的框架):
如果我通过RecyclerView替换我的View,预览将按预期工作:
我没有看到我应该在这里做什么:如果RecyclerView被正确显示,我在子类的构造函数中所做的就是调用super()
并且如果isInEditMode
为真则返回,那么可以解释什么我的视图没有显示?
答案 0 :(得分:0)
截至今天,使用Android Studio 2.1.2 打开相同项目会在预览窗格中成功显示UI。我只能猜测这是IDE中的一个错误,并且自从我问这个问题以来已经修复了。
答案 1 :(得分:0)
要解决此问题,请降低
类似于26的API级别
然后重建项目。