小编Ron*_*tin的帖子

Android中View和ViewGroup的区别

Android编程中a View和a有什么区别ViewGroup

android view viewgroup

81
推荐指数
5
解决办法
8万
查看次数

BroadcastReceiver与WakefulBroadcastReceiver

有人可以解释一下BroadcastReceiver和之间的确切区别WakefulBroadcastReceiver吗?

在什么情况下我们必须使用每个Receiver类?

java android broadcastreceiver wakelock

61
推荐指数
1
解决办法
3万
查看次数

如何在kotlin中使用Android支持typedef注释?

我开发Android应用程序并经常使用注释作为编译时参数检查,主要是android的支持注释.

java代码中的示例:

public class Test
{
    @IntDef({Speed.SLOW,Speed.NORMAL,Speed.FAST})
    public @interface Speed
    {
         public static final int SLOW = 0;
         public static final int NORMAL = 1;
         public static final int FAST = 2;
    }

    @Speed
    private int speed;

    public void setSpeed(@Speed int speed)
    {
        this.speed = speed;
    }
}
Run Code Online (Sandbox Code Playgroud)

由于Android中的性能问题,我不想使用枚举.kotlin的自动转换器只生成无效代码.如何@IntDef在kotlin中使用注释?

android kotlin

33
推荐指数
3
解决办法
9369
查看次数

如何在Kotlin子类上访问Java静态方法?

我创建了一个Java类的Kotlin子类:

class AlarmReceiver : WakefulBroadcastReceiver() {

    companion object {
        const val ACTION_NOTIFY = "..."
    }

    override fun onReceive(context: Context, intent: Intent) { ... }
}
Run Code Online (Sandbox Code Playgroud)

WakefulBroadcastReceiver 有两种静态方法:

  • static boolean completeWakefulIntent(Intent intent)
  • static ComponentName startWakefulService(Context context, Intent intent)

从我的AlarmReceiver班级中调用这些就像我期望的那样.但是,我想在我的Kotlin子类之外调用其中一种方法.

问题

如果我尝试AlarmReceiver.completeWakefulIntent(intent)使用不同的Kotlin类,我会收到以下编译错误:

未解决的参考:completeWakefulIntent

我认为这是因为编译器试图在AlarmReceiver伴随对象上解析方法,而不是从其超类中查找继承的方法.作为一种解决方法,我可以直接定义具有相同签名的方法AlarmReceiver.Companion:

class AlarmReceiver : WakefulBroadcastReceiver() {

    companion object {
        const val ACTION_NOTIFY = "..."

        // Just call the superclass implementation for now
        fun completeWakefulIntent(intent: Intent): Boolean =
            WakefulBroadcastReceiver.completeWakefulIntent(intent)
    } …
Run Code Online (Sandbox Code Playgroud)

kotlin

13
推荐指数
1
解决办法
1770
查看次数

标签 统计

android ×3

kotlin ×2

broadcastreceiver ×1

java ×1

view ×1

viewgroup ×1

wakelock ×1