如何在Kotlin anko中使用TextInputLayout和TextInputEditText
Error:(63, 13) Unresolved reference: textInputLayout Error:(64, 17) Unresolved reference: textInputEditText
当我尝试在kotlin anko中添加textInputLayout&textInputEditText时,我得到了上面的错误信息。
以下是我的代码 –
private fun test(context: Context): View{ return with(context){ verticalLayout { textInputLayout { textInputEditText{} } } } }
根据您的需要创建一个kotlin代码文件。 下面的代码没有任何类声明。
inline fun ViewManager.textInputEditText() = textInputEditText {} inline fun ViewManager.textInputEditText(theme: Int = 0, init: TextInputEditText.() -> Unit) = ankoView({ TextInputEditText(it) }, theme, init) inline fun ViewManager.textInputLayout() = textInputLayout {} inline fun ViewManager.textInputLayout(theme: Int = 0, init: TextInputLayout.() -> Unit) = ankoView({ TextInputLayout(it) }, theme, init)
希望这可以帮助
编辑:根据@博世的评论,anko是非常新的,几乎没有文件。 当我遇到同样的问题,我在互联网上搜索了很多,但没有找到任何文档。
我的解决方案是基于GitHub上的下面提到的线程 – (也没有理论上的解释)
https://github.com/Kotlin/anko/issues/205
https://github.com/Kotlin/anko/issues/264
TextInputLayout
在设计支持库中,所以你需要一个附加的Anko依赖项来为你提供这个库的绑定(你可以在这里找到所有不同的Anko包的列表):
compile "org.jetbrains.anko:anko-design:$anko_version"
如果您还没有,还需要设计支持库本身:
compile 'com.android.support:design:25.4.0'