小编All*_*ork的帖子

RealmObject的Kotlin数据类

我正在使用Kotlin和Realm编写数据类

data class AuthToken(val register: Boolean,
                     val token: String,
                     val tokenSecret: String,
                     val user: AuthUser)
Run Code Online (Sandbox Code Playgroud)

我必须将数据保存到db,所以我使用Realm来保存它.但是正如我们所知,如果我想将类保存到Realm,那么AuthToken该类必须扩展RealmObject.

这就是问题,Kotlin说数据类不能扩展类.所以我放弃数据类,只使用普通的Kotlin类作为模型,然后另一个问题来了:

Kotlin类没有吸气剂或固定剂.我们知道Realm类必须将所有属性设置为private并编写getter和setter.

现在我想知道如何解决这个问题.

android realm kotlin data-class

29
推荐指数
1
解决办法
8795
查看次数

按位&不适用于kotlin中的字节

我正在尝试写kotlin代码,如:

for (byte b : hash)  
     stringBuilder.append(String.format("%02x", b&0xff));
Run Code Online (Sandbox Code Playgroud)

但我与"&"无关.我正在尝试使用"b和0xff"但它不起作用.按位"和"似乎适用于Int,而不是字节.

java.lang.String.format("%02x", (b and 0xff))
Run Code Online (Sandbox Code Playgroud)

可以使用

1 and 0xff
Run Code Online (Sandbox Code Playgroud)

bit-manipulation kotlin

19
推荐指数
2
解决办法
1万
查看次数

我正在构建通知时,TaskStackBuilder.addParentStack无法正常工作

我做了一切,正如官方文档所写.但是当我向后导航时,MainActivity(父)不会打开.相反,应用程序关闭.

这是我的代码:

Intent resultIntent = new Intent(context, TestActivity.class);

TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
stackBuilder.addParentStack(TestActivity.class);
stackBuilder.addNextIntent(resultIntent);
Run Code Online (Sandbox Code Playgroud)

清单如下:

    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name=".TestActivity"
        android:parentActivityName=".MainActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".Main2Activity" />
    </activity>
Run Code Online (Sandbox Code Playgroud)

谢谢.

notifications android taskstackbuilder

11
推荐指数
0
解决办法
1982
查看次数

Rxjava AndroidSchedulers.mainThread()意味着UI线程?

我的代码是这样的:

.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(AndroidSchedulers.mainThread())
.subscribe ({
    adapter.notifyDataSetChanged()
})
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:只有创建视图层次结构的原始线程才能触及其视图. 所以我把它改成:

.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(AndroidSchedulers.mainThread())
.subscribe ({
        runOnUiThread(Runnable {
            adapter.notifyDataSetChanged()
 })
 }
Run Code Online (Sandbox Code Playgroud)

这很有道理.所以我很困惑.我曾经想过.observeOn(AndroidSchedulers.mainThread())订阅块中的代码在ui线程上运行,但我是如何得到这个错误的?

android rx-java

11
推荐指数
1
解决办法
3440
查看次数

Kotlin文档不支持像"<p>"这样的标签

我正在撰写文档评论来描述一种方法.

   /**
     * <p>necessary
     * <p>setType is to set the PendingIntend's request code</p>
     */
Run Code Online (Sandbox Code Playgroud)

但它不会显示段落.如果我不使用<p>,所有文档都在一行中没有任何中断.它适用于Java类,但是当谈到Kotlin时,我不知道如何处理它.

android javadoc kotlin kdoc

5
推荐指数
1
解决办法
242
查看次数

层次结构查看器消失了

它曾经工作得很好.但最近我升级Android Studio到2.3,我发现层次结构查看器消失了.我无法在sdk/tools目录和Android设备监视器中找到它.

在此输入图像描述

在此输入图像描述

hierarchyviewer

4
推荐指数
1
解决办法
3458
查看次数