我正在尝试为Android-App创建一个ProgressDialog(只是一个简单的显示用户正在发生的东西,没有按钮或任何东西),但我无法正确.我一直在浏览论坛和教程以及SDK附带的示例代码,但无济于事.
这就是我得到的:
btnSubmit.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
(...)
ProgressDialog pd = new ProgressDialog(MyApp.this);
pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
pd.setMessage("Working...");
pd.setIndeterminate(true);
pd.setCancelable(false);
// now fetch the results
(...long time calculations here...)
// remove progress dialog
pd.dismiss();
Run Code Online (Sandbox Code Playgroud)
我也试过添加pd.show();和搞乱参数,new ProgressDialog导致什么都没有(除了所选参数不起作用的错误),这意味着:ProgressDialog永远不会出现.应用程序只是保持运行,就好像我从未添加过对话框一样.
我不知道我是否在正确的地方创建了对话框,我把它移动了一下但是,这也没有帮助.也许我在错误的背景下?上面的代码是内部private ViewGroup _createInputForm()在MyApp.
任何提示都表示赞赏,
正统的MVVM实现是没有意义的吗?我正在创建一个新的应用程序,我考虑了Windows窗体和WPF.我之所以选择WPF,是因为它具有前瞻性,并提供了很大的灵活性.使用XAML的代码更少,更容易对UI进行重大更改.
由于WPF的选择是显而易见的,我认为我可以使用MVVM作为我的应用程序架构,因为它提供了可混合性,分离问题和单元可测试性.从理论上讲,它看起来很像UI编程的圣杯.这个简短的冒险; 然而,已经变成了一个真正的头痛.正如在实践中所预期的那样,我发现我已将一个问题换成了另一个问题.我倾向于成为一个强迫性的程序员,因为我想以正确的方式做事,这样我才能获得正确的结果,并可能成为更好的程序员.MVVM模式刚刚落后于我对生产力的考验,刚刚变成了一个令人讨厌的大黑客!
明显的例子是添加对模态对话框的支持.正确的方法是建立一个对话框并将其绑定到视图模型.让这个工作很难.为了从MVVM模式中受益,您必须在应用程序的各个层中的多个位置分发代码.您还必须使用深奥的编程结构,如模板和lamba表达式.让你盯着屏幕挠挠头的东西.正如我最近发现的那样,这使得维护和调试成为一场噩梦.我有一个关于盒子正常工作,直到我第二次调用它时出现异常,说它一旦关闭就无法再显示对话框.我必须为对话框窗口添加一个关闭功能的事件处理程序,在IDialogView实现中添加另一个,最后在IDialogViewModel中添加另一个.我以为MVVM会让我们免于这种奢侈的hackery!
有几个人为这个问题提供竞争解决方案,他们都是黑客,并没有提供一个干净,易于重复使用的优雅解决方案.大多数MVVM工具包都会掩盖对话框,当它们确实解决它们时,它们只是不需要自定义接口或视图模型的警报框.
我打算放弃MVVM视图模式,至少是它的正统实现.你怎么看?如果你有任何问题,是否值得为你带来麻烦?我只是一个不称职的程序员,还是MVVM不是它被炒作的东西?
我维护了一些Python包.我有一个非常相似的setup.py文件.但是,在做的时候setup.py install,我的一个软件包被安装为一个鸡蛋,而其他软件包被安装为"鸡蛋文件夹",即扩展名为"egg"的文件夹.
它们之间有什么区别导致这种不同的行为?
我已经找到了每页的最大网页数量:
可自定义 - 在web.config文件中, <configuration><SharePoint><WebPartLimits MaxZoneParts="XX" />
50(默认) - http://technet.microsoft.com/en-us/library/cc262787.aspx
100(建议最大值) - http://technet.microsoft.com/en-us/library/cc287743.aspx
但是,我一直无法找到:
每个Web部件区域的最大Web部件数
每页的最大Web部件区域数
我有一个简单的页面,并在该页面运行一个简单的jquery按键例程来捕获数字1到9的点击(必须是通过RNIB可访问性测试).
并且该页面是一个表单,可以将数字作为邮政编码的一部分输入.
http://find.talking-newspapers.co.uk/result.php?addressInput=kingston
滚动到底部,尝试键入8或9.输入文本,但它也作用于按键.期待但不好.
我知道各种各样的东西,比如document.getElementById,但是我无法弄清楚如何将这些放在一起以确保当光标位于文本输入框中时,它不会触发按键捕捉器.
我目前使用以下代码从Amazon C#中检索和解压缩字符串数据:
GetObjectRequest getObjectRequest = new GetObjectRequest().WithBucketName(bucketName).WithKey(key);
using (S3Response getObjectResponse = client.GetObject(getObjectRequest))
{
using (Stream s = getObjectResponse.ResponseStream)
{
using (GZipStream gzipStream = new GZipStream(s, CompressionMode.Decompress))
{
StreamReader Reader = new StreamReader(gzipStream, Encoding.Default);
string Html = Reader.ReadToEnd();
parseFile(Html);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想反转这段代码,以便我可以压缩并将字符串数据上传到S3,而无需写入磁盘.我尝试了以下,但我得到一个例外:
using (AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(AWSAccessKeyID, AWSSecretAccessKeyID))
{
string awsPath = AWSS3PrefixPath + "/" + keyName+ ".htm.gz";
byte[] buffer = Encoding.UTF8.GetBytes(content);
using (MemoryStream ms = new MemoryStream())
{
using (GZipStream zip = new GZipStream(ms, CompressionMode.Compress))
{
zip.Write(buffer, 0, buffer.Length); …Run Code Online (Sandbox Code Playgroud) 使用Python 3.1.2我在发送二进制附件文件(jpeg,pdf等)时遇到问题 - MIMEText附件工作正常.有问题的代码如下......
for file in self.attachments:
part = MIMEBase('application', "octet-stream")
part.set_payload(open(file,"rb").read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment; filename="%s"' % file)
msg.attach(part) # msg is an instance of MIMEMultipart()
server = smtplib.SMTP(host, port)
server.login(username, password)
server.sendmail(from_addr, all_recipients, msg.as_string())
Run Code Online (Sandbox Code Playgroud)
但是,在调用堆栈中向下(参见下面的回溯),看起来好像msg.as_string()已经收到一个附件,它创建了'bytes'类型的有效负载而不是字符串.
有谁知道可能导致问题的原因是什么?任何帮助,将不胜感激.
艾伦
builtins.TypeError: string payload expected: <class 'bytes'>
File "c:\Dev\CommonPY\Scripts\email_send.py", line 147, in send
server.sendmail(self.from_addr, all_recipients, msg.as_string())
File "c:\Program Files\Python31\Lib\email\message.py", line 136, in as_string
g.flatten(self, unixfrom=unixfrom)
File "c:\Program Files\Python31\Lib\email\generator.py", line 76, in flatten
self._write(msg)
File "c:\Program Files\Python31\Lib\email\generator.py", line 101, in _write
self._dispatch(msg)
File …Run Code Online (Sandbox Code Playgroud) 当用户从表单切换到另一个窗口时是否会触发winforms事件?即不是通过最小化,而是通过点击另一个窗口.如何检测表单何时变为非活动状态?谢谢!
我在美国一所大学的一个小型独立科学实验室工作,我注意到,与业内表面上遵循的许多实践相比,例如每天结帐到版本控制系统,使用对于所有语言(如emacs)等的单个IDE /编辑器,我们遵循相当粗暴的编程实践.
因此,我正在考虑将所有程序,脚本等组合在一起,并构建简化的环境以提高工作效率.我希望Stack Overflow上的人们提供同样的建议.这是我的主要计划:我使用MATLAB,C和Python脚本,我想编辑,从单个编辑器编译它们,并确保正确的版本控制.
(我想要的建议的问题/事情用斜体字表示)
1]安装Cygwin,让它与Windows一起使用,这样我就可以使用git或类似的版本控制系统(有没有可以直接从windows CLI工作的DVCS,所以我可以跳过Cygwin步骤?).
2]设置emacs以使用C,Python和MATLAB文件,这样我就可以从一个编辑器(比如emacs)一次编辑和编译这三个文件
(我对emacs菜单不太熟悉,但是有没有办法为某些语言设置编译器的路径?我知道我可以谷歌这个,但emacs文档已经证明我很难读到目前为止,所以如果有人用简单的语言告诉我,我会很感激的
3]在每天结束或半天开始检查代码,以便保持我的代码的正确进展路径(两个问题),
你可以直接从emacs结账文件吗?
有没有办法将LabVIEW文件签出到像git这样的DVCS?
最后,我想为这个问题的相当含糊的性质道歉,并希望我能学会随着时间的推移提出更好的问题.如果人们提出他们的建议,我会很感激,并指出可以帮助我学习的任何资源.
我在Android平台上使用内置的sqlite库.
我正在考虑添加几个用户可以用于自己的自定义应用程序的通用字段,但这些字段大部分时间都是空白的.
我的问题是,这些空白字段会为我的数据库添加多少开销?空字段甚至占用sqlite中的每个记录内存吗?如果是这样,多少钱?我不太了解sqlite数据库的内部工作原理.