来自模块的自定义视图未显示在android studio调色板中

时间:2019-01-28 14:53:03

标签: java android android-studio

我创建了android studio模块,该模块应该是android ui框架。框架几乎没有自定义按钮,自定义布局等组件,如果我将其包含到应用程序中,则可以在“项目”下的调色板中看到它们。

Imgur

开发的下一步是使用户能够使用gradle导入框架,而我设法使用jfrog进行了导入,但是当您导入到项目中时,您将无法看到面板中的组件。

我尝试仅导入.jar和.aar文件,但没有任何反应。而且,如果您手动编写xml,则组件会正常显示在预览窗口中

这里是gitjfrog

P.S .:请记住,该项目仍在开发中,因此git文档并不完整!

谢谢,狮子座

编辑: 如果您打开新项目,则可以使用gradle导入框架。 只需添加:

maven {
        url  "https://cmykui.bintray.com/maven"
}

到您的root build.gradle文件,然后

implementation 'hr.foi.air2018.cmykui:cmykui:0.3.6'

到您的应用程序build.gradle

如果您想试用组件,可以添加

<hr.foi.air.cmykui.component.ButtonComponent
    android:id="@+id/button"
    android:layout_width="match_parent"
    android:layout_height="50dp" />

查看框架是否已导入。

1 个答案:

答案 0 :(得分:1)

我认为这是一个Android Studio问题。它不会在XML的“设计”面板的“项目”选项卡上显示导入模块中的“查看”子类。

原因1。

Android Studio不会在“设计”面板的“项目”选项卡的依存关系中显示“视图”子类。

例如,即使implementation 'com.android.support:percent:28.0.0'存在于module(app)build.gradle中,android.support.percent.PercentFrameLayout也不会出现在设计面板的“项目”选项卡中。当自动完成提示在xml的“文本”选项卡中提示时,索引器可以找到它们。因此,Android Stuidio应该检查它们是否为公共View类,然后将其添加到“项目”标签,但不是。

原因2。

我还尝试了一个包含View子类的非常简单的模块。它显示在开发阶段(该模块中有源代码),但是一旦构建并导入为aar,就不会显示。

我已经尝试过了。

public class CustomView extends View
{
    public CustomView(final Context context, @Nullable final AttributeSet attrs)
    {
        super(context, attrs);
    }
}

我也在问题中的cmykui模块中进行了检查,但结果是相同的。如果使用源代码从Git导入,它将显示。如果导入为aar,则不会。