如何从Android中的PreferenceActivity获取SharedPreferences?

我正在使用PreferenceActivity来显示我的应用程序的一些设置。 我通过xml文件膨胀设置,以便我的onCreate(和完整的类方法)如下所示: public class FooActivity extends PreferenceActivity { @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); addPreferencesFromResource(R.xml.preference); } } PreferenceActivity PreferenceFragment的javadoc声明 这些首选项将在用户与之交互时自动保存到SharedPreferences中。 要检索此活动中首选项层次将使用的SharedPreferences实例,请使用与此活动相同的包中的上下文调用getDefaultSharedPreferences(android.content.Context)。 但是如何在另一个活动中获得SharedPreference的名称? 我只能打电话 getSharedPreferences(name, mode) 在其他的活动,但我需要的是PreferenceActivity使用的SharedPreference的名称。 什么是名字?我怎样才能找回它?

getApplication()与getApplicationContext()

我无法找到一个令人满意的答案,所以在这里我们去: Activity/Service.getApplication()和Context.getApplicationContext()什么? 在我们的应用程序中,都返回相同的对象。 然而,在ActivityTestCase中,模拟应用程序将使getApplication()返回模拟,但getApplicationContext仍将返回不同的上下文实例(由Android注入)。 这是一个错误? 这是故意的吗? 我甚至不了解其中的差别。 在测试套件之外,是否有两个调用可能返回不同的对象? 何时,为什么? 而且,为什么getApplication在Activity和Service上定义,而不是在Context ? 不应该总是有从任何地方有效的应用程序实例吗?

Android:我想动摇它

我需要添加一个摇动功能,将刷新我的Android应用程序。 我找到的所有文档都涉及到实现SensorListener,但是Eclipse告诉我已经废弃了,建议使用SensorEventListener。 任何人有一个很好的指导,我怎么去创造这个摇控制器 ?

使用Rails 3.1,你把你的“页面特定”JavaScript代码?

据我了解,所有的JavaScript被合并到1文件。 当Rails添加//= require_tree .时,Rails会默认执行此操作//= require_tree . 到你的application.js清单文件的底部。 这听起来像是一个真正的生活节省,但我有点关注页面特定的JavaScript代码。 此代码是否在每个页面上执行? 我想要的最后一件事就是当我们只需要在1页上的时候就为每个页面实例化所有的对象。 另外,是不是也有冲突的代码的可能性? 或者你在页面的底部放一个小script标签,只是调用一个方法来执行页面的JavaScript代码? 那么你不再需要require.js了吗? 谢谢 编辑 :我欣赏所有的答案…我不认为他们真的在解决问题。 其中一些是关于样式,似乎不涉及…和其他人只是提到javascript_include_tag …我知道存在(显然…),但似乎Rails 3.1前进的方式是包装所有的Javascript到1个文件中,而不是在每个页面的底部加载单个的Javascript。 我能想出的最好的解决方案是用id或ES class div标签包装某些功能。 在javascript代码中,您只需检查页面上是否存在id或class ,如果是,则运行与之关联的javascript代码。 这样,如果动态元素不在页面上,JavaScript代码不会运行 – 即使它包含在由Sprockets打包的大量application.js文件中。 我的上述解决方案具有如下优点:如果在100个页面中的8个页面上包含搜索框,则它将仅在这8个页面上运行。 您也不必在网站上的8页上包含相同的代码。 事实上,您再也不必在网站上包含手动脚本标记。 我认为这是我的问题的实际答案。

JavaScript私有方法

使用公共方法创建一个JavaScript类,我会这样做: function Restaurant() {} Restaurant.prototype.buy_food = function(){ // something here } Restaurant.prototype.use_restroom = function(){ // something here } 这样,我的班级的用户可以: var restaurant = new Restaurant(); restaurant.buy_food(); restaurant.use_restroom(); 如何创建可由buy_food和use_restroom方法调用的私有方法,但不能由该类的用户在外部调用? 换句话说,我希望我的方法实现能够做到: Restaurant.prototype.use_restroom = function() { this.private_stuff(); } 但是这不应该工作: var r = new Restaurant(); r.private_stuff(); 我如何将private_stuff定义为私有方法,这两种方法都适用? 我已经读了Doug Crockford的几次写作 ,但是看起来好像“私有”方法可以通过公共方法调用,“特权”方法可以从外部调用。

在JavaScript中有一个(内置的)方法来检查一个字符串是否是一个有效的数字?

我希望与旧的VB6 IsNumeric()函数有相同的概念空间吗?

为所有服务器端代码调用ConfigureAwait的最佳实践

当你有服务器端代码(例如一些ApiController )和你的函数是异步的 – 所以它们返回Task<SomeObject> – 当你等待函数调用ConfigureAwait(false) ,是否认为是最佳做法? 我已经读过,它更高性能,因为它不必将线程上下文切换回原始线程上下文。 但是,对于ASP.NET Web Api,如果您的请求在一个线程中进入,并且您正在等待某个函数,并且在您返回ApiController函数的最终结果时调用ConfigureAwait(false) ,这可能会将您置于不同的线程中。 我已经打出了一个我在下面讨论的例子: public class CustomerController : ApiController { public async Task<Customer> Get(int id) { // you are on a particular thread here var customer = await SomeAsyncFunctionThatGetsCustomer(id).ConfigureAwait(false); // now you are on a different thread! will that cause problems? return customer; } }

JOIN和INNER JOIN的区别

这两个连接都会给我同样的结果: SELECT * FROM table JOIN otherTable ON table.ID = otherTable.FK VS SELECT * FROM table INNER JOIN otherTable ON table.ID = otherTable.FK 在演出或其他方面的表述是否有区别? 它在不同的SQL实现之间有区别吗?

如何覆盖另一个div的一个div

希望有人可以协助,但我需要协助覆盖一个单独的div在另一个div 。 我的代码如下所示: <div class="navi"></div> <div id="infoi"> <img src="info_icon2.png" height="20" width="32"/> </div> 不幸的是,我不能在第一个div.navi里嵌套div#infoi或者img 。 它必须是如图所示的两个单独的div ,但我需要知道如何将div#infoi放在div.navi并且放在div.navi的最右边最右侧。 将不胜感激任何帮助实现这一点。

最终关键字的工作原理

在Java中,我们使用final关键字和变量来指定它的值不被改变。 但是我发现你可以改变类的构造函数/方法中的值。 同样,如果变量是static那么这是一个编译错误。 这里是代码: import java.util.ArrayList; import java.util.List; class Test { private final List foo; public Test() { foo = new ArrayList(); foo.add("foo"); // Modification-1 } public static void main(String[] args) { Test t = new Test(); t.foo.add("bar"); // Modification-2 System.out.println("print – " + t.foo); } } 上面的代码工作正常,没有错误。 现在将该变量更改为static : private static final List foo; […]