小编And*_*Dev的帖子

避免在特定条件下返回结果集

我执行一个select语句.如果结果集中的行数小于或等于某个数字,则返回所选行.如果行数大于某个数字,我想不返回任何行.

运行select并进行比较后,如果行数大于允许的行数,我执行:

SELECT TOP 0 NULL AS ID
Run Code Online (Sandbox Code Playgroud)

我发现的是,最初选择的两个记录也与第二个结果集一起返回,其中一个列名为ID,没有记录.显然,初始select语句仍然被返回,我想避免这种情况.有什么办法吗?

编辑:忘了添加我需要返回一个状态值,指示是否有更多的行比允许的行.这意味着我必须得到计数,并且更愿意拥有计数,而不必两次运行相同的查询.因此,如果允许的最大行数为25但实际存在零行,则返回状态为0.但是如果行数大于25,那么我不会返回任何行,但我将状态设置为 - 1.

sql t-sql

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

将数据存储在可供所有活动访问的SharedPreferences中

我想使用SharedPreferences存储和检索我的应用程序中所有活动都可访问的数据.那可能吗?到目前为止,我一直这样做,以便为特定活动存储数据.

android sharedpreferences

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

最接近的整数值为20

如果我的数字大于20,但可以平均分为2而没有任何余数,我想确定哪个数字最接近20.例如:

对于2048年,除以2足够的时间会使我达到16,这是我可以达到的最接近的20.如果数字是800,则最接近的是25.

我可以写一个循环,只是继续划分和比较范围,并选择最接近的值.是否有更简单的方法,可能是通过移位?

编辑:当我说它平均除以2时,我的意思是它一直分为2.70个数字只能平均分为35个.像2048或1024这样的数字将一直均分为2.

样本编号:2048,1920,1600,1536,1080..640,352,320,176.这些是来自摄像机的典型图像尺寸.

java division

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

了解Looper在Android中的用途

我不得不将Looper添加到以下代码中:

public class MyRunnable implements Runnable
{
  @Override
  public void run()
  {
      Looper.prepare();
      final Looper looper = Looper.myLooper();

      new Handler().postDelayed(
          new Runnable()
          {
            @Override
            public void run()
            {
              try
              {
              }
              catch (Exception ex)
              {
              }
              finally
              {
                looper.quit();
              }
            }
          }, 100);

      Looper.loop();
  }
}
Run Code Online (Sandbox Code Playgroud)

请注意,我在runnable中有一个runnable.嵌套的runnable通过Handler执行.最初我没有Looper但Android抱怨我需要在执行另一个线程之前调用Looper.prepare.

我读到了Looper,但它似乎仍然有点神秘.它似乎像某种内部消息传递管道.我不清楚为什么这是必要的,因为没有消息从我的外部runnable到我的内部runnable.即使这是真的,似乎Android只是制定了一个硬规则,如果你从一个线程调用一个线程,你还必须调用Looper.prepare.即使我接受原样,它仍然无法理解为什么我需要调用looper.loop和looper.quit.如果我省略了Looper.loop,我的Handler永远不会运行,这是不明确的.Looper.loop做了什么让我的Handler能够运行?

android handler

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

将日期格式化为本地设置,但仅限于月和日

我的日期是格式为“2013-12-31”的字符串。我想根据用户的设备设置将其转换为本地日期,但只显示月份和日期。因此,如果用户的设备设置为德语,则日期应转换为“31.12”。在德国,首先是日,然后是月。我不希望包括年份。

android date

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

在输入控件上丢失焦点后更新模型

在这段代码中:

<input class="form-control" ng-model="actionText" />
Run Code Online (Sandbox Code Playgroud)

AngularJS会更新模型actionText作为用户类型的东西.如果这种模式被其他地方使用,如控制器,每个字符键入它就会被更新.我可以想到那些实际上可能是坏事的情况.也许您只需要用户将焦点从输入移动到其他内容后的模型值,例如当您需要在输入完成时验证输入时.我可以使用Javascript的模糊函数来设置处理程序,以确定何时焦点丢失,但这似乎与Angular的方式相反.输入失去焦点后是否有AngularJS更新模型的方法?

angularjs

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

插件org.jetbrains.android无法保存设置并已被禁用

启动Android Studio 1.2时,我收到错误消息:

插件org.jetbrains.android无法保存设置并已被禁用

我尝试重新启动甚至下载了最新的Android插件,但它没有帮助.有什么建议?

android-studio

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

配置IntelliJ getter和setter代码生成

我用来定义私有的前缀为'm'的成员变量.例:

private boolean mDone;
Run Code Online (Sandbox Code Playgroud)

getter/setter通常如下所示:

public boolean getDone() }
  return mDone;
}

public void setDone(boolean done) {
  mDone = done;
}
Run Code Online (Sandbox Code Playgroud)

Intellij IDE确实有一种创建这些getter/setter的方法,但是它将'm'前缀添加到getter/setter方法的名称中.有办法防止这种情况吗?

java intellij-idea

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

在 Android 应用程序中声明 Kotlin 扩展函数的位置

假设我想将以下代码作为可重用的组件:

fun <T> MutableList<T>.swap(index1: Int, index2: Int) {
    val tmp = this[index1] // 'this' corresponds to the list
    this[index1] = this[index2]
    this[index2] = tmp
}
Run Code Online (Sandbox Code Playgroud)

我想在我的应用程序中的任何地方使用它,如下所示:

val l = mutableListOf(1, 2, 3)
l.swap(0, 2)
Run Code Online (Sandbox Code Playgroud)

如果我错了,请纠正我,但我相信函数扩展声明可以存在于类之外。那么在 Android 应用程序中,我应该把这个声明放在哪里?或者它甚至重要吗?compile 是否只编译代码,而不管扩展在哪里声明并使其可在全局范围内重用,还是必须使其成为类的一部分?

android kotlin kotlin-extension

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

LifecycleScope.launch 与 onViewCreated 内的协程

在此示例代码中:

class MyFragment: Fragment {
    init {
        lifecycleScope.launch {
            whenStarted {

            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

whenStarted 中的代码仅在片段的生命周期开始时运行。我不清楚这到底是做什么的,而不仅仅是在 onViewCreated 内部启动一个协程。文档状态:

如果 Lifecycle 在协程通过 when 方法之一处于活动状态时被销毁,则协程将自动取消。

那么这是您使用lifecycleScope.launch 的唯一原因吗?如果生命周期终止,让协程自动终止?

android kotlin-coroutines

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