我有一个带有自动完成框的活动.每当文本更改时,我想调用Web服务并使用返回的新String []填充ArrayAdapter.这部分一切都很好,除了在String []学校中有所有新值时UI中的列表没有被刷新.我的onCreate中填充的原始列表始终保留.
我在某个地方读到了我需要在运行UI的同一个线程上更新它,所以我尝试了下面代码中列出的Runnable.但是,只是更新我的类变量学校并不与notifyOnDataSetChange()一起工作
我哪里错了?
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
schools = SchoolProxy.search("Co");
autoCompleteAdapter = new ArrayAdapter(this,android.R.layout.simple_dropdown_item_1line, schools);
autoComplete = (AutoCompleteTextView) findViewById(R.id.edit);
autoComplete.addTextChangedListener(textChecker);
autoComplete.setAdapter(autoCompleteAdapter);
}
...
....
...
final TextWatcher textChecker = new TextWatcher() {
public void afterTextChanged(Editable s) {}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
public void onTextChanged(CharSequence s, int start, int before, int count)
{
schools = SchoolProxy.search(s.toString());
runOnUiThread(updateAdapter);
}
};
private Runnable updateAdapter = new Runnable() {
public void …Run Code Online (Sandbox Code Playgroud) 所以我有一个父母和儿童商店,如图所示:
父模型
Ext.define('APP.model.Client', {
extend: 'Ext.data.Model',
requires: [
'APP.model.Website', 'Ext.data.association.HasMany', 'Ext.data.association.BelongsTo'],
fields: [{
name: 'id',
type: 'string'
}, {
name: 'name',
type: 'string'
}, {
name: 'slug',
type: 'string'
}, {
name: 'active',
type: 'boolean'
}, {
name: 'current',
type: 'boolean'
}],
hasMany: {
model: 'APP.model.Website',
name: 'websites'
}
});
Run Code Online (Sandbox Code Playgroud)
儿童模特
Ext.define('APP.model.Website', {
extend: 'Ext.data.Model',
fields: [{
name: 'id',
type: 'string'
}, {
name: 'client_id',
type: 'string'
}, {
name: 'sub_domain',
type: 'string'
}, {
name: 'active',
type: 'boolean'
}], …Run Code Online (Sandbox Code Playgroud) 我正在使用WP v3.3.1,我正在尝试制作一个插件.我已经半工作了.它启动了,add_action工作,但由于某些原因我的过滤器没有被触发.当我用Google搜索时,我看到我本应该这样做,但它不起作用.我也尝试将它包括在课外,这也没有用.错误日志是从构造函数写入的,但不是xmlAddMethod.我在单个文件中测试了xmlrpc调用,但是它有效,但是在编写类时遇到了问题.
//DOESN'T WORK HERE
add_filter( 'xmlrpc_methods', array( &$this, 'xmlAddMethod') );
class TargetDomain extends Domain
{
public function __construct()
{
error_log('TARGET: __construct');
//DOESN'T WORK HERE EITHER
add_filter( 'xmlrpc_methods', array( &$this, 'xmlAddMethod') );
parent::__construct();
}
function xmlAddMethod( $methods )
{
error_log('TARGET: xml_add_method');
$methods['myBlog.publishPost'] = 'publishMyPost';
return $methods;
}
Run Code Online (Sandbox Code Playgroud) 我试图使用python日志记录模块创建一个自定义日志文件,记录其他信息,如主机名,并将其添加到我的数据库.下面是我为此创建的类,Handler部分工作得很好,但是现在我添加了一个自定义LogRecord类,它会抛出这个错误:
/src/lib/__init__.py", line 31, in __init__
logging.LogRecord.__init__(self, *args, **kwargs)
exceptions.TypeError: __init__() takes at most 9 arguments (10 given)
Run Code Online (Sandbox Code Playgroud)
以下是我执行它的方式
logging.setLoggerClass(MyLogger)
log = logging.getLogger('testing')
log.addHandler(MyLogHandler())
d = {'host': '192.168.0.1'}
log.warn('Hi', d)
Run Code Online (Sandbox Code Playgroud)
以下是课程.它显然与*args,**kwargs有关,但是当我看它时,*args是空的,而**kwargs只包含d上面指定的变量.我不明白这个问题.
class MyLogRecord(logging.LogRecord):
def __init__(self, *args, **kwargs):
logging.LogRecord.__init__(self, *args, **kwargs) //THIS IS THE LINE IT DIES ON
self.host = 'localhost'
class MyLogFormatter(logging.Formatter):
def __init__(self, fmt, datefmt=None, host=None):
logging.Formatter.__init__(self, fmt, datefmt)
self.host = host
def format(self, record):
return logging.Formatter.format(record)
class MyLogger(logging.getLoggerClass()):
def makeRecord(self, *args, **kwargs):
return MyLogRecord(*args, …Run Code Online (Sandbox Code Playgroud) 我在单元格中有两个组合框,由工作表中的范围填充.当第一个更改时,我构建一个URL并调用:
var resp = UrlFetchApp.fetch(url, {"method": "get","muteHttpExceptions":false});
Run Code Online (Sandbox Code Playgroud)
它填充了控制第二个组合框的第二个范围.这在调试模式下工作得很好.但我的目标是使用该onEdit模式.如果更改了第一个组合框,则该方法将运行并填充第二个组合框.使用此声明:
mydoc.getActiveSheet().getRange(15, 1).setValue("Some debug message");
Run Code Online (Sandbox Code Playgroud)
我把它放在整个方法中,看它死了.我在一个UrlFetchApp.fetch()永不写入的方法后面有一个声明,所以我知道这就是问题所在.您可以在活动期间进行这些类型的通话吗?
同样,它可以通过脚本编辑器手动运行它,但是从调用时不能onEdit.
我看到这个问题他们不允许它,但是线程中的最后一条评论说他通过将另一个自定义方法附加到onEdit来实现它.我URLFetchApp从另一个方法调用,但我尝试创建一个myOnEdit函数,并URLFetchApp从那里调用,但它仍然失败.不确定手动附加到活动的意思是什么......
我试图得到一个似乎重定向不止一次的页面的最终网址.在浏览器中尝试此示例网址,并将其与我的代码段底部的最终网址进行比较:
这是我运行的测试代码,请注意,获取代码200的最终URL与浏览器中的代码不同.我有什么选择?
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import httplib
>>> from urlparse import urlparse
>>> url = 'http://www.usmc.mil/units/hqmc/'
>>> host = urlparse(url)[1]
>>> req = ''.join(urlparse(url)[2:5])
>>> conn = httplib.HTTPConnection(host)
>>> conn.request('HEAD', req)
>>> resp = conn.getresponse()
>>> print resp.status
301
>>> print resp.msg.dict['location']
http://www.marines.mil/units/hqmc/
>>> url = 'http://www.marines.mil/units/hqmc/'
>>> host = urlparse(url)[1]
>>> req = ''.join(urlparse(url)[2:5])
>>> conn = httplib.HTTPConnection(host)
>>> conn.request('HEAD', …Run Code Online (Sandbox Code Playgroud) 我有一个存储这样的记录的表:
name | stat | value
--------------------------
object1 | stat1 | val1
object1 | stat2 | val2
object1 | stat3 | val3
object1 | stat4 | val4
Run Code Online (Sandbox Code Playgroud)
但我想查询数据,以便返回这样的行
name | stat1| stat2| stat3| stat4
-------------------------------------
object1 | val1 | val2 | val3 | val4
Run Code Online (Sandbox Code Playgroud)
我会使用案例陈述,或者如何实现这样的事情?我的例子只显示了4个可能的统计数据,但希望我可以创建足够动态的东西,如果我将来添加新的统计数据,则不必重写查询.如果那是不可能的,我的选择是什么?
我有一个文档集合,我想通过某个字段查询,按字段location对它们进行排序pos,并且只返回每个pos字段的最高值.
所以现在的查询看起来像这样:
$locations = array(1,2,3,4,5,6);
$results = $this->dm->createQueryBuilder('\App\Document\Test')
->select('id', 'word', 'pos','change', 'title', 'coll_at', 'location')
->field('location')->in($locations)
->sort('location', 'asc')
->sort('pos', 'asc')
->getQuery()->execute();
Run Code Online (Sandbox Code Playgroud)
但是因为location每个具有不同的特定条目可以有多个条目pos,所以我必须创建一个foreach循环来操作之后的数据.在这种情况下,我可以采用该快捷方式只是在返回数据后更改数据,但我还有其他情况,根本不能这样做.所以我创建了这个较小的场景,试图找出如何使用Doctrine ODM的group查询,甚至是映射和减少它.不确定最好的方法.我看到很多获得跑步总数等的例子.
那么我如何创建一个查询来获得pos每个特定字段中最高的数值location?知道可能存在多个具有相同location但不同pos值的文档.最重要的是,拥有我在上面列出的所选记录的所有字段->select()