小编bla*_*lah的帖子

为什么`null` Nullable <T>有哈希码?

有点奇怪的问题......

但是,任何人都可以给我一个理由,说明为什么这会是预期的行为?

这对我来说似乎很奇怪....

//Makes perfect sense
object o = null;
o.GetHashCode().Dump();
Run Code Online (Sandbox Code Playgroud)

NullReferenceException:未将对象引用设置为对象的实例.

//Seems very odd
int? i = null;
i.GetHashCode().Dump();
Run Code Online (Sandbox Code Playgroud)

0

这显然意味着:

int? zero = 0;
int? argh = null;

zero.GetHashCode() == argh.GetHashCode(); //true
Run Code Online (Sandbox Code Playgroud)

c# nullable

38
推荐指数
3
解决办法
3225
查看次数

如何降级SVN工作副本的版本?

SVN目录很容易在计算机之间移动,但这可能导致工作副本和已安装的svn客户端之间的版本不匹配,从而导致错误

svn: This client is too old to work with working copy '.';  
  please get a newer Subversion client
Run Code Online (Sandbox Code Playgroud)

在一个完美的世界中,人们可以安装更新版本的SVN客户端,但是当这不可能或不方便时,能够将工作副本降级到安装的客户端版本会更好 - 特别是当你知道没有正在使用更高版本的功能.

只有在有问题的工作副本没有任何更改的情况下,使用旧客户端签出新的工作副本才有效,并且不会太大而不会造成不便.

想象的场景将是这样的:Joe向您发送一个包含大量嵌套目录(以及关联的版本化.svn文件夹)的大型工作副本.你正在努力.当你尝试提交它时,svn告诉你你的客户太旧了.不应该将它发回给Joe.不需要检查新的工作副本,并且在任何情况下合并这些更改都是不方便的.

有办法做到这一点吗?

svn

36
推荐指数
2
解决办法
3万
查看次数

Android Lint:如何忽略区域语言环境字符串文件中缺少的翻译警告,该文件故意仅覆盖某些默认翻译?

是否有可能在没有Lint抱怨MissingTranslation的单独资源文件中翻译某些字符串,而不是全部?

例如:我的应用程序的字符串都在res/values/strings.xml中.其中一个字符串是

<string name="postal_code">Postal Code</string>

由于"邮政编码"在美国通常被称为"邮政编码",我想在内容中添加另一个资源res/values-en-rUS/strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="postal_code">Zip Code</string>
</resources>
Run Code Online (Sandbox Code Playgroud)

但是,Lint在values/strings.xml中抱怨其他字符串,但在values-en-rUS/strings.xml中没有

我意识到你可以通过tools:ignorevalues/strings.xml中指定来抑制警告.但这是不可取的,因为Lint警告在翻译成另一种语言时实际上很有用.

相反,是否可以在values-en-rUS/strings.xml文件中禁止警告,如在查找缺少的翻译时告诉Lint不要将该文件用作标准?

android translation localization lint android-lint

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

某些运行Jelly Bean/4.2.1的设备的Android操作系统错误 - TextView.setError(CharSequence错误)缺少图标

运行Jelly Bean(4.2.1)的一些(但不是全部)设备似乎缺少感叹号错误图标,该错误图标应出现在TextView(或更常见的是EditText)通过其设置错误的设备上TextView.setError(CharSequence error).

在此输入图像描述 在此输入图像描述

Galaxy Nexus似乎肯定错过了这个偶像.

结果是,设置的错误状态setError仅在EditText具有焦点时才会显现.这使得setError(...)有用的要少得多,因为它常常用来鼓励用户返回到该EditText解决的问题.例如,您有一个标准的登录屏幕,其中包含用户单击提交按钮时验证的用户名和密码表单条目.除非用户单击该表单,否则将不会显示用户名表单上设置的验证错误消息 - 错误图标旨在鼓励他们这样做!

测试:(可能有一个更容易访问的EditText,但这个可以广泛使用)

  1. 打开设置
  2. 选择"添加帐户"(这是旧设备上的"帐户和同步")
  3. 选择"Google"作为帐户类型
  4. 选择"现有"(点击旧设备上的"下一步"和"登录"后)
  5. 将"电子邮件" EditText留空,请单击"密码"EditText

此时,"电子邮件"上设置了一个错误EditText,表示它不能为空.在没有此问题的设备上,会显示常用的错误图标,当EditText有焦点时,该图标会扩展为完整的错误消息.在运行Jelly Bean的Galaxy Nexuses上,没有显示图标,只有当"电子邮件" EditText再次聚焦时,错误才会显示,并且此时仍然缺少图标.

这看起来像一个错误,但我想检查其他人是否可以重现它,了解问题可能是什么,并有一个很好的解决方法.

使用setError(CharSequence error, Drawable icon)可能会解决问题,但能够在不同的Android版本中使用库存错误图形会很好.

android textview android-edittext android-4.2-jelly-bean

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

"无标签视图指向此文本字段"警告消息的含义

这个警告是什么意思?

没有标签视图使用android:labelFor ="@ id/@ id/editText1"属性指向此文本字段

请注意,double id(@id/@id)是错误消息文本的问题,并不反映XML内容(这是正确的语法).

android android-lint

35
推荐指数
4
解决办法
3万
查看次数

为什么用+添加字符后,我的字符串变成整数而不是字母?

这就是任务:给定一个字符串,返回一个字符串,其中原始字符中的每个字符都有两个字符。

而且我不明白为什么它的输出是数字而不是字母,我试过不起作用?

public String doubleChar(String str) {
  String s = "";
  for(int i=0; i<str.length(); i++){
  s +=  str.charAt(i) + str.charAt(i);

  }
    return s;
}
Run Code Online (Sandbox Code Playgroud)

预期:

doubleChar(“ The”)吗?“ Tthhee”

doubleChar(“ AAbb”)吗?“ AAAAbbbb”

输出:

doubleChar(“ The”)吗?“ 168208202”

doubleChar(“ AAbb”)吗?“ 130130196196”

java string

35
推荐指数
4
解决办法
3183
查看次数

在批处理模式下用R抑制"空设备"输出

我有许多bash脚本调用R脚本来绘制事物.就像是:

#!/bin/bash
R --vanilla --slave <<RSCRIPT
cat("Plotting $1 to $2\n")
input <- read.table("$1")
png("$2")
plot(as.numeric(input[1,]))
dev.off()
RSCRIPT
Run Code Online (Sandbox Code Playgroud)

问题是尽管如此--slave,dev.off()打印消息的调用null device 1.一旦完成了大量的绘图,或者对于绘制到多个文件的更复杂的脚本,这将成为一个真正的麻烦.

有没有办法压制这个消息?

bash statistics charts r

33
推荐指数
3
解决办法
2万
查看次数

多语种网站的搜索引擎优化:语言特定的结果,而不更改URL?

我的网站有两种语言:英语和瑞典语.

我想要的是,如果有人谷歌在瑞典的网站,它应该显示瑞典的结果.也就是说,我希望谷歌在瑞典(google.se)抓取该网站的瑞典语版本.对于任何其他地方,我希望抓取英文版本.

我阅读了以下内容:http:
//googlewebmastercentral.blogspot.se/2010/03/working-with-multilingual-websites.html

它说我应该有两个单独的网页.有没有办法让我不需要更改网址中的任何内容?

我的意思是,如果google.se上的任何人搜索example.com,它应该显示瑞典语结果,其他地方,英语.

multilingual seo

33
推荐指数
3
解决办法
3万
查看次数

如何使ListView的页眉或页脚不可点击

我添加一个页脚和页眉视图到ListView通过使用方法setHeaderView()setFooterView()和一个ViewInflater.这非常有效.

但是,如何阻止页眉或页脚视图触发onListItemClick事件?当然,我可以捕获事件并检查它是否来自页眉或页脚,但这只解决了问题的一部分,因为页眉和页脚在单击时仍然聚焦.

android listview android-listview

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

当我设置listView.onScrollListener(this)时,会调用onScroll,但没有任何触摸

当我onScrollListener为我设置时ListView,它会调用onScroll.这会导致崩溃,因为某些事情尚未初始化.

这是正常的吗?注意:即使没有触摸手机,也会发生这种情况.

public class MainActivity1 extends Activity implements OnClickListener, OnScrollListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.layout1);

    ListView lv = (ListView)findViewById(R.id.listview1);
    lv.setOnScrollListener(this);
    ...
}
...
public void onScroll(AbsListView view, int firstVisibleItem,
        int visibleItemCount, int totalItemCount){
    if( firstVisibleItem+visibleItemCount == totalItemCount ){
        pullContactList();
    }
}
Run Code Online (Sandbox Code Playgroud)

android onscroll android-listview

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