Tag: 安卓

Live模板不能在Kotlin中工作

希望你已经使用Android默认的实时模板。 喜欢: Generate debug log statement: “logd”+TAB Generate error log statement: “loge”+TAB Generate info log statement: “logi”+TAB Generate TAG declaration: “logt”+TAB Generate parameter logging: “logm”+TAB Generate method return log: “logr”+TAB 它在KOTLIN中不可用? 在Android Studio 3.0 Canary版本中不可用吗?

如何使用Kotlin协程等待()在主线程上

我刚开始学习Kotlin协同程序,并试图模拟一些长时间的API调用,并在UI上显示结果: class MainActivity : AppCompatActivity() { fun log(msg: String) = println(“[${Thread.currentThread().name}] $msg”) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.setContentView(R.layout.activity_main) val resultTV = findViewById(R.id.text) as TextView val a = async(CommonPool) { delay(1_000L) 6 } val b = async(CommonPool) { delay(1_000L) 7 } launch() { val aVal = a.await() val bVal = b.await() resultTV.setText((aVal * bVal).toString()) } […]

未解决的参考:数据绑定

我正在使用Android Studio Beta 1和Android Gradle Plugin 3.0.0-beta1和Kotlin Plugin 1.1.3-2 。 我也有数据绑定启用: dataBinding { enabled = true } 但不幸的是Kotlin类没有看到从布局生成的类,因为我得到这样的错误: 错误:(17,31)未解决的引用:数据绑定 错误:(39,36)未解析的引用:MyFragmentBinding 当然,Java类可以看到这些生成的类。

这个@ MainActivity的代码是什么意思?

我是Kotlin的初学者,下面的代码是来自网页的,我不明白参数this@MainActivity中的代码layoutManager = LinearLayoutManager(this@MainActivity) ,你能告诉我吗? 谢谢! import android.os.Bundle import android.support.v7.widget.LinearLayoutManager import android.view.Menu import android.view.MenuItem import kotlinx.android.synthetic.main.activity_main.* import mobi.porquenao.poc.kotlin.R class MainActivity : BaseActivity() { lateinit var listAdapter: MainAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) with (list) { setHasFixedSize(true) layoutManager = LinearLayoutManager(this@MainActivity) listAdapter = MainAdapter() adapter = listAdapter } } override fun onCreateOptionsMenu(menu: Menu?): Boolean { menuInflater.inflate(R.menu.main, […]

Android Studio在layout.xml中显示错误

我正在使用数据绑定库,在Android Studio 3.0中遇到以下问题: somelayout.xml: … 在这个地方: android:text=”@{meeting.title}” Android Studio 3.0强调@符号并通知有关错误: Error:(29, 27) or expected, got ‘@’ 模型类是用Kotlin编写的,如果它有任何相关性的话。 代码完成也不适用于绑定类。 应用程序可以使用gradle命令和Android Studio运行应用程序按钮来成功构建。 所以这只是编辑问题 。 我在Mac上观察这个问题。 在Windows上,它工作正常。 我没有更多的电脑来检查是否与平台相关的问题。

Android Room:查询中的每个绑定variables都必须具有匹配的方法

我用kotlin使用android持久库库房。 Dao看起来像这样 @Dao interface CountryDao { @Query(“SELECT * FROM countries”) fun loadAllCountried() : LiveData<List> @Insert(onConflict = OnConflictStrategy.REPLACE) fun insertAll(products: List) @Query(“SELECT * FROM countries WHERE id = :countryId”) fun loadCountry(countryId: Int): LiveData @Query(“SELECT * FROM countries WHERE id = :countryId”) fun loadCountrySync(countryId: Int): CountryEntity } 这似乎对我很好,但我得到这个错误 Error: Each bind variable in the query must have […]

Kotlin中的一个类和一个对象之间的区别

我是Kotlin的新手,最近把一个简单的文件从java转换为Kotlin。 我想知道为什么Android转换器将我的Java类更改为Kotlin对象。 Java的: public class MyClass { static public int GenerateChecksumCrc16(byte bytes[]) { int crc = 0xFFFF; int temp; int crc_byte; for (byte aByte : bytes) { crc_byte = aByte; for (int bit_index = 0; bit_index > 15)) ^ ((crc_byte >> 7)); crc < 0) { crc ^= 0x1021; crc &= 0xFFFF; } crc_byte <<= […]

Android studio 3稳定版“房间1(RC)”的“app:kaptDebugKotlin”错误

编译我写在kotlin中的项目时,我仍然遇到这个错误: 错误:执行任务’:app:kaptDebugKotlin’失败。 内部编译器错误。 查看日志了解更多详情 有没有人有这个bug的解决方法或解决方案? 我已经看到了几乎所有围绕这个问题的答案,但是在这个级别上非常有用。 我应该补充说,项目工作正常,没有任何改变从gradle突然间,我得到了编译错误

致命例外:主KotlinNullPointerException

这是我第一次构建一个android应用程序。 但是,当我在我的虚拟设备上运行应用程序,它停止工作,并不断崩溃。 该错误说明了有关空指针exception的情况。 这是我第一次使用Kotlin和我用Java编码,并改为Kotlin。 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_add_sales) val date: EditText? = null val changeDate: CheckBox? = null val yes: RadioButton? = null val no: RadioButton? = null date!!.setText(“15-11-2017”) date.isEnabled = false val button2 = findViewById(R.id.btnSubmit) as Button button2.setOnClickListener { var name = findViewById(R.id.name) as EditText var cost = findViewById(R.id.cost) as EditText […]

有没有办法在活动之间传递函数引用?

有没有在Kotlin和Android中捆绑函数引用的方法,以便可以从其他碎片调用函数? 例如,我的片段工厂方法如下所示: fun newInstance(tryAgainFunction: () -> Unit): TimeOutHandlerFragment { val fragment = TimeOutHandlerFragment() val bundle = Bundle() return fragment } 我希望能够将我的tryAgainFunction保存在包中以供进一步检索。 非常感谢! 编辑 最后,最合适的解决方案是使用热键的答案,然后在onViewCreated我初始化一个侦听器与传递函数。 完整的代码如下: companion object { val CALLBACK_FUNCTION: String = “CALLBACK_FUNCTION” fun newInstance(tryAgainFunction: () -> Unit): TimeOutHandlerFragment { val fragment = TimeOutHandlerFragment() val bundle = Bundle() bundle.putSerializable(CALLBACK_FUNCTION, tryAgainFunction as Serializable) fragment.arguments = bundle […]