我需要在应用程序启动时显示虚拟键盘,但到目前为止我都失败了.
我在方法"OnCreate"中使用此代码来显示虚拟键盘
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(txtBuscar.getId(), InputMethodManager.SHOW_FORCED);
Run Code Online (Sandbox Code Playgroud)
此代码可以随时在任何屏幕上正常工作,但在"第一个"活动开始时不起作用.为什么?
当我开始另一个活动时它尝试了它并且它可以工作,但是当我开始"第一个"活动时它不起作用.
我试图把这个代码放在事件"OnCreate"等等......但它似乎不起作用.
无论如何,当我启动应用程序时,"强制"显示键盘?
提前致谢.
我知道我应该在配置文件或我自己的子类中定义装饰器ConfigurableSiteMeshFilter.例如:
public class SitemeshFilter extends ConfigurableSiteMeshFilter {
@Override
protected void applyCustomConfiguration(final SiteMeshFilterBuilder builder) {
builder.addDecoratorPath("/*", "/WEB-INF/views/layouts/default.jsp");
}
}
Run Code Online (Sandbox Code Playgroud)
这对我有用,但这并不完美.我可以在JSP文件中定义直接使用的装饰器吗?
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html sitemesh:decorator="layouts/default.jsp"> <!-- something like this -->
<head>
<title>Home</title>
<meta content="test" name="description" />
</head>
<body>
<h1>Hello world!</h1>
${body}
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 如果我给了傅里叶变换的极坐标,我想回到笛卡尔(真/虚)坐标,我该怎么做呢?
我可以通过以下代码从笛卡尔坐标系中获取极坐标数字:
private double GetPhase(double real, double imaginary)
{
return Math.Atan2(imaginary, real);
}
private double GetMagnitude(double real, double imaginary)
{
return Math.Sqrt((real * real) + (imaginary * imaginary));
}
Run Code Online (Sandbox Code Playgroud)
但是我怎么回去?
我试图在用户离开我的网站时运行一个快速的PHP脚本,并且还将一个变量从我的javascript传递给php,但我不太确定如何包含php文件并将其传递给var.但它实际上并没有运行PHP脚本.有任何想法吗?
(javascript从外部活动函数中获取用户名,我知道有效,我在一个警报及其那里测试了var.)
我的JavaScript:
<script language="javascript" type="text/javascript">
var username = null;
function GetUsername(usernameff)
{
username = usernameff;
}
window.onbeforeunload = function ()
{
if (username != null)
{
<?php include("scripts/RemoveUserOnDisconnect.php?username=username");?>
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
我的RemoveUserOnDisconnect.php文件:
<?php
mysql_connect("mysql.mysql.com", "username", "password");
mysql_select_db("my_db");
mysql_query("DELETE FROM my_table WHERE username = '$username'");
?>
Run Code Online (Sandbox Code Playgroud) CKEditor是一个很棒的编辑器,pastefromword插件非常好.我想将插件提供的过滤应用于所有粘贴的文本.例如,从单词粘贴时,将删除所有字体和大小.从电子邮件粘贴时不会发生这种情况.
也就是说,我提出了以下解决方案并将其发布在此处以获得一些反馈.我想知道我是否过于复杂,或者是否有更简单的方法.我只是从pastefromword/plugin.js中复制了代码.
通过我的自定义config.js
...
CKEDITOR.config.pasteFromWordCleanupFile = '/pastefromword.js';
...
CKEDITOR.on( 'instanceReady', function( ev ) {
/**
* Paste event to apply Paste From Word filtering on all text.
*
* The pastefromword plugin will only process text that has tell-tale signs
* it is from Word. Use this hook to treat all pasted text as if
* it is coming from Word.
*
* This method is a slightly modified version of code found in
* plugins/pastefromword/plugin.js
*/
ev.editor.on( 'paste', function( …Run Code Online (Sandbox Code Playgroud) 我有一个系统,它有一个复杂的主键用于连接外部系统,还有一个快速,小的不透明主键供内部使用.例如:外部键可能是复合值 - 类似于(给定名称(varchar),系列名称(varchar),邮政编码(char)),内部键是整数("客户ID").
当我收到带有外部密钥的传入请求时,我需要查找内部密钥 - 这里是棘手的部分 - 如果我还没有一个用于给定外部ID的内部密钥,则分配一个新的内部密钥.
显然,如果我一次只有一个客户端与数据库通信,这很好. SELECT customer_id FROM customers WHERE given_name = 'foo' AND ...,INSERT INTO customers VALUES (...)如果我没有找到一个值.但是,如果有可能同时从外部系统进入许多请求,并且许多可能同时到达前所未闻中的客户,则存在竞争条件,其中多个客户端可能尝试INSERT新行.
如果我正在修改现有的行,那将很容易; 只是SELECT FOR UPDATE第一次,以获得相应的行级锁,做一个之前UPDATE.但是在这种情况下,我没有可以锁定的行,因为该行还不存在!
到目前为止,我已经提出了几个解决方案,但每个解决方案都有一些非常重要的问题:
INSERT,从顶部重新尝试整个事务.如果交易涉及十几个客户,这是一个问题,特别是如果传入的数据可能每次都以不同的顺序讨论相同的客户.可能会陷入相互递归的死锁循环,每次冲突都发生在不同的客户身上.您可以通过重试尝试之间的指数等待时间来缓解这种情况,但这是处理冲突的缓慢而昂贵的方法.此外,这使得应用程序代码变得非常复杂,因为所有内容都需要重新启动.SELECT捕获错误之前启动保存点INSERT,然后再次回滚到保存点SELECT.保存点不是完全可移植的,它们的语义和功能在数据库之间略有不同; 我注意到的最大的区别是,有时它们似乎是窝,有时它们没有,所以如果我能避免它们会很好.这只是一个模糊的印象 - 它是不准确的吗?保存点是标准化的,还是至少实际上是一致的?此外,保存点使得在同一事务上并行执行操作变得困难,因为您可能无法确切知道您将回滚多少工作,尽管我意识到我可能只需要接受它.pg_" 开头),所以这又是一个可移植性问题.此外,postgres的这种方式需要我将键转换为一对整数,它可能不适合.是否有更好的方法来获取假设对象的锁?在我看来,这必须是数据库的常见并发问题,但我没有设法找到它的大量资源; 可能只是因为我不知道规范的措辞.是否可以在任何标记数据库中使用一些简单的额外语法来执行此操作?
如何从电话字段中删除任何非数字字符,包括空格.我需要一串数字0-9.没有()或空格.
我有一个蒙面输入电话(999)999-9999
Phone Number:
<input id="phone" type="text" /> (999) 999-9999
Run Code Online (Sandbox Code Playgroud)
我只需要9999999999
我正在使用maskedinput插件http://digitalbush.com/projects/masked-input-plugin/
if(isset($_POST["email"]))
{
$email = mysql_real_escape_string($_POST["email"]); /* Line 10 */
$password = mysql_real_escape_string($_POST["password"]);
$result = mysql_query("SELECT password, id FROM users WHERE email = '$email'");
if (!$result)
{
die('Invalid query: ' . mysql_error());
}
$row = mysql_fetch_assoc($result);
if($row['password'] == $password)
{
ini_set("session.cookie_lifetime","360000");
session_start();
$_SESSION['valid_user'] = $row['id'];
$_SESSION['email'] = $row['email'];
mysql_close($link);
header('Location: index.php');
}
mysql_close($link);
}
Run Code Online (Sandbox Code Playgroud)
我没有发布任何帖子,但它说$email没有在第10行定义.为什么?我使用EasyPHP.
注意:未定义的索引:第10行的C:\ Program Files\EasyPHP-5.3.5.0\www\v0.3\model\login.php中的电子邮件
我希望能够将最后一个固定的内部版本号传递给我的TeamCity构建步骤.我没有看到我可以传入的系统参数,就像我使用当前的内部版本号一样.
有没有我没看到的参数?或者有没有办法从URL获取版本号?- 谢谢
我自动为一些Python代码生成单元测试,其代码数以千计.该unittest模块使用类来包含测试但是我猜测类可能包含的方法数量有一个上限 - 这是这种情况吗?