小编for*_*pas的帖子

同一活动中 Edittext 的多个日期选择器

在我的应用程序中,我有两个 edittext 并且我想要当单击打开的两个 edittext datepicker 对话框并在编辑文本中设置两个值时。

final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() {

        @Override
        public void onDateSet(DatePicker view, int year, int monthOfYear,
                              int dayOfMonth) {
            // TODO Auto-generated method stub
            myCalendar.set(Calendar.YEAR, year);
            myCalendar.set(Calendar.MONTH, monthOfYear);
            myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
            updateDOB();
            updateDOA();
        }

    };
    doa.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            new DatePickerDialog(FamilyEditActivity.this, date, myCalendar
                    .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                    myCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });
    spoucedob.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            new DatePickerDialog(FamilyEditActivity.this, date, myCalendar
                    .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                    myCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });
}

private void updateDOA() …
Run Code Online (Sandbox Code Playgroud)

java android

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

视图中的 setBackground 不能应用于 (int)

试图将背景设置为文本。问题是下一个错误——视图中的setBackground不能应用于(int)

这是我的代码

if (restaurants.get(position).getOffers() != null) {

        viewHolder.offerOrNew.setText("%");
        viewHolder.offerOrNew.setBackground(R.drawable.offers_style);
    }
Run Code Online (Sandbox Code Playgroud)

错误是在这一行中相应地引起的

viewHolder.offerOrNew.setBackground(R.drawable.offers_style);
Run Code Online (Sandbox Code Playgroud)

java android

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

在 RecyclerView.Adapter 内滚动到位置

在 RecyclerView.Adapter 类中注册点击监听器后,我必须滚动到位置 X!

    class MyAdapter(context: Context, mRV: RecyclerView, mLayoutm: LinearLayoutManager) {
    ...

         override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
              holder.itemView.XY_button.setOnClickListener { // Button inside a cell  

                    mRV.layoutManager.scrollToPosition(x)  // Not work
                    mRV.scrollToPosition(x)      // Not work
                    mLayoutm.scrollToPosition(x) // Not work
                    (context as MyRVClass).mRV.mLayoutm.scrollToPosition(x) // Not work
                    (context as MyRVClass).mRV.scrollToPosition(x) // Not work
                    // it does't work with smoothScrollToPosition() too
              }    
         }
    }
Run Code Online (Sandbox Code Playgroud)

PS:我在 swift/iOS 中使用委托协议解决了这个问题,我们在 android/Kotlin 中是否有等效的东西?

java android kotlin android-recyclerview

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

找到第N个最高工资

编写SQL查询以从Employee表中获得第n个最高薪水(SQL Server)

| Id | Salary |
+----+--------+
| 1  | 100    |
| 2  | 200    |
| 3  | 300    |
Run Code Online (Sandbox Code Playgroud)

对于此示例,n = 2的第n个最高薪水是200.如果没有第n个最高薪水,则查询应返回null.

| getNthHighestSalary(2) |
+------------------------+
| 200                    |
Run Code Online (Sandbox Code Playgroud)

除了使用函数之外,有没有办法编写这个查询?

sql t-sql sql-server sql-server-2012

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

如何在android中使用sqlite VACUUM

我有一个 android 应用程序,它涉及登录到该应用程序并执行许多 CRUD 操作。当用户第一次登录时,如果有可供该用户下载的任何数据,它会快速记录他/她。但是后来重新登录时,这个过程很慢,有时需要大约20到30分钟。因此,我阅读了有关使用 VACUUM 来避免删除记录时创建的可用空间的信息。

我对何时以及如何使用 VACUUM 感到有些困惑,是在打开用户登录时打开数据库吗?或其他时间。

对此的任何建议都会有所帮助。谢谢

java sqlite android android-sqlite

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

Sqlite3中两个日期之间的差异

我在 Sqlite3 中工作并尝试过

DATEDIFF(days, listing_date, sale_date)
Run Code Online (Sandbox Code Playgroud)

但这没有用。在 Sqlite3 中获取时间戳两列之间的差异的正确方法是什么?

id  listing_date    sale_date
1   2012/02/27      2020/02/27
2   2011/06/27      2020/02/17
3   2008/08/03      2020/02/19
4   2012/12/27      2020/02/07
5   2001/02/17      2020/02/29
6   2019/02/01      2020/02/27
7   2018/02/27      2020/02/03
Run Code Online (Sandbox Code Playgroud)

sql sqlite

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

postgresql如何使用great函数获取最大值的列名?

我的表中有四列,分别是 col1、col2、col3、col4。我可以通过使用找到最大的价值

select greatest(col1,col2,col3,col4) from mytable;
Run Code Online (Sandbox Code Playgroud)

但我需要知道最大值的列名。

sql postgresql case

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

GROUP BY 并为分组的每个唯一值创建列(始终输出为 1 行),然后将输出用作 JOIN - SQL Server

我需要按 2 列(BillingId 和 PaymentType)对数据进行分组 - 没有问题,并且输出 1 行,其中包含唯一的 PaymentType 列- 此步骤存在问题。因此,每个 BillingId 只有 1 行,该表将用于连接数据库中的另一个表。

计费表:

BillingId (unique)

 12345
 67890

Run Code Online (Sandbox Code Playgroud)

付款表:

PaymentId PaymentType  BillingId PaymentAmount
 (unique)

   12      electronic    12345      62.29
   14      electronic    12345      73.28
   56      electronic    12345     -62.29
   6       electronic    67890      83.58
   2       adjustment    67890      30.43
Run Code Online (Sandbox Code Playgroud)

我的代码:

SELECT GroupedTable.* 

FROM (SELECT b.BillingId, 
             p.PaymentType, 
             SUM(p.PaymentAmount) AS AmountPaid
      FROM Billing AS b
      LEFT JOIN Payment AS p
        ON (b.BillingId = p.BillingId)
      GROUP BY b.BillingId, p.PaymentType) AS GroupedTable
Run Code Online (Sandbox Code Playgroud)

输出(显然不正确):

  BillingId …
Run Code Online (Sandbox Code Playgroud)

sql-server join group-by case conditional-aggregation

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

尝试从表中删除 X 时,表中不存在键列 X

我需要一些帮助。我正在尝试在新的 docker 实例上运行一些迁移脚本(旧的和本地的工作正常)。Mariadb,Innodb 引擎。

我有这样的迁移:

ALTER TABLE userinfo DROP COLUMN barcode
Run Code Online (Sandbox Code Playgroud)

这给了我错误:StatementEnd 错误代码:1072。表中不存在键列“条形码”

该专栏存在!这是我的显示创建表:

CREATE TABLE userinfo (
  id int(11) unsigned NOT NULL AUTO_INCREMENT,
  barcode varchar(45) NOT NULL,
  store_id int(11) unsigned DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY store_id_barcode_UNIQUE (`store_id`,`barcode`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
Run Code Online (Sandbox Code Playgroud)

我尝试了类似的方法ALTER TABLE userinfo ADD KEY "barcode" ("barcode"),但 DROP 语句仍然不起作用。

PS 我从 CREATE 语句中删除了很多列,否则该线程将太长而无法阅读。

alter-table mariadb

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

订单管理 SQL 架构

我正在为一家公司的销售人员设计一个 SQL 数据库,其中每个客户都会从该公司订购多个商品。我想为客户单独存储该订单。这将链接到客户表。

客户表:

  • 客户ID
  • 客户名称
  • 客户电话

目前我正在考虑为每个订单制作一个单独的订单表

订单表:

  • 产品编号
  • 产品数量
  • 总金额

但不知道如何将其链接回客户。或者说如何唯一标识每个订单表。我会在 NoSQL 中完成,但数据必须本地存储在 SQLite 中。客户可能会多次订购,因此我应该能够识别当前和以前的订单

sql sqlite

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