小编Emm*_*ali的帖子

应用程序类android上的协程范围

我需要在我的 android 上引用协程范围Application。我做了以下

class TodoApplication : Application() {
    private var job = Job()
    private val applicationScope = CoroutineScope(Dispatchers.Main + job)

    val tasksRepository: TasksRepository
        get() = ServiceLocator.provideTasksRepository(this, applicationScope)

}
Run Code Online (Sandbox Code Playgroud)

这是这样做的方法吗。如果是这样,我如何取消在此范围内启动的协程job.cancel()

应用程序类没有 onDestroy 方法作为活动

android kotlin

18
推荐指数
3
解决办法
4747
查看次数

仅允许使用 -Xjvm-default 选项从具有“@JvmDefault”成员的接口继承

我在Android studio上更新了kotlin版本

ext.kotlin_version = '1.6.10'
Run Code Online (Sandbox Code Playgroud)

不幸的是我收到构建错误

仅允许使用 -Xjvm-default 选项从具有“@JvmDefault”成员的接口继承

我怎样才能解决这个问题?

android kotlin

12
推荐指数
1
解决办法
2480
查看次数

布局检查器在 Android Studio 上不起作用

尝试使用 Android Studio 布局检查器调试我的可组合项时出现以下错误

Could not download androidx.compose.ui:ui:writeVersionFile .... (See a picture)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我怎样才能解决这个问题?

附加信息

  • Mac M1芯片
  • Android Studio 火烈鸟 | 2022年2月1日测试版2
  • 互联网:好的

android android-studio android-jetpack-compose

9
推荐指数
1
解决办法
1516
查看次数

类变量对于不同的实例有不同的值

我在某处读到“如果 python 找不到实例变量,它将尝试返回具有相同名称的类变量的值”

例如

class Sample:
    pi = 10
Run Code Online (Sandbox Code Playgroud)

现在

x1 = Sample()
x2 = Sample()

x1.pi         # returns 10
x2.pi         # returns 10

x1.pi = 20    # change the value of class variable
x1.pi         # return 20 (OK)
x2.pi         # still returns 10 :(
Sample.pi     # returns 10 :(
Run Code Online (Sandbox Code Playgroud)

怎么了??

python

7
推荐指数
1
解决办法
529
查看次数

如何隐藏android studio中生成的文件夹

我正在开发一个 Android 项目,但我从我的文件树中看到了一些自动生成的代码,如图所示

我怎样才能隐藏它们(绿色的)

在此输入图像描述

java android kotlin android-studio

6
推荐指数
1
解决办法
1161
查看次数

Django:对象和模型集

我正在学习 django 1.10 官方教程第 2 部分

class  Question(models.Model):
  # ......

class Choice(models.Model):
  question = models.ForeignKey(Question, on_delete=models.CASCADE)
  #.......
Run Code Online (Sandbox Code Playgroud)

最近我看到以下命令:-

q = Question.objects.get(id=1)
q.choice_set.all()
Run Code Online (Sandbox Code Playgroud)

我的问题:-

Question 实例如何包含choice_set,我知道它用于访问相关对象。

为什么这无效

c = Choice.objects.get(id=1)
c.question_set.all()
Run Code Online (Sandbox Code Playgroud)

python django

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

方向始终为纵向(libgdx中的运动控制)

我的代码如下:

Input.Orientation orientation = Gdx.input.getNativeOrientation();
message = "";
switch (orientation) {
    case Landscape:
        message += "Landscape\n";
        break;
    case Portrait:
        message += "Portrait\n";
        break;
    default:
        message += "Whatever\n";
}
Run Code Online (Sandbox Code Playgroud)

上面的代码(内部渲染方法)总是表示设备处于纵向模式,即使我旋转设备!我究竟做错了什么?如何准确检测设备是处于纵向还是横向模式?

java android orientation libgdx

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

如何验证至少一个嵌套对象的存在?

代码

class Survey < ApplicationRecord
    has_many :questions, inverse_of: :survey,  :dependent => :destroy
    accepts_nested_attributes_for :questions
    validates_associated :questions
end

class Question < ApplicationRecord
    belongs_to :survey, inverse_of: :questions
    validates_presence_of :survey
end
Run Code Online (Sandbox Code Playgroud)

我的调查控制器

def new
    @survey = Survey.new
    2.times {@survey.questions.build}
end
Run Code Online (Sandbox Code Playgroud)

形式

    <%= form_for @survey do |f|%>
        <p>
            <%= f.label :name%>
            <%= f.text_field :name%>
        </p>
        <%= f.fields_for :questions do |builder|%>
            <p>
                <%= builder.text_area :content, rows: 3%>   
            </p>
        <% end %>

        <p><%= f.submit %></p>

    <% end %>
Run Code Online (Sandbox Code Playgroud)

正如您在用户创建调查时所看到的,表单提供了两个问题,我希望用户在创建调查时至少提供一个问题。怎么可能实现???

ruby ruby-on-rails

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

在django rest框架中实现角色

我正在构建一个应该具有以下类型用户的API

super_user - 创建/管理管理员

admin - 管理事件(模型)和事件参与者

participants - 参加活动,受管理员邀请参加活动

另外我希望每种类型的用户都有电话号码字段

试过了

class SuperUser(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    phone_number = models.CharField(max_length=20)

class Admin(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    phone_number = models.CharField(max_length=20)


class Participant(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    phone_number = models.CharField(max_length=20)
Run Code Online (Sandbox Code Playgroud)

但是直觉告诉我这是一个错误的方法来处理这个问题.有人可以请帮助.

python django django-rest-framework

3
推荐指数
2
解决办法
2643
查看次数

如何在一行上使用“导入为”导入多个类

我想导入这样的东西

from x import t as b
from x import u as c
Run Code Online (Sandbox Code Playgroud)

有没有办法用单个from x来达到同样的效果

python

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