小编Ber*_*t F的帖子

如何在非活动类(LocationManager)中使用getSystemService?

我无法将主要活动OnCreate方法中的任务卸载到另一个类来完成繁重的工作.

当我尝试从非Activity类调用getSystemService时会抛出异常.

任何帮助将不胜感激 :)

lmt.java:

package com.atClass.lmt;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.location.Location;

public class lmt extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        fyl lfyl = new fyl();
        Location location = lfyl.getLocation();
        String latLongString = lfyl.updateWithNewLocation(location);

        TextView myLocationText = (TextView)findViewById(R.id.myLocationText);
        myLocationText.setText("Your current position is:\n" + latLongString);
    }
}
Run Code Online (Sandbox Code Playgroud)

fyl.java

package com.atClass.lmt;

import android.app.Activity;
import android.os.Bundle;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
import android.content.Context;

public class fyl {
    public Location getLocation(){
        LocationManager locationManager; …
Run Code Online (Sandbox Code Playgroud)

android

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

是否可以在构造函数中的super()之前进行计算?

鉴于我有一个类Base,它有一个带有TextBox对象的参数构造函数作为它的参数.如果我有一个简单的以下形式的类:

public class Simple extends Base {
  public Simple(){
    TextBox t = new TextBox();
    super(t);
    //wouldn't it be nice if I could do things with t down here?
  }
}
Run Code Online (Sandbox Code Playgroud)

我会收到一个错误,告诉我对super的调用必须是构造函数中的第一个调用.但奇怪的是,我能做到这一点.

public class Simple extends Base {
  public Simple(){
    super(new TextBox());
  }
}
Run Code Online (Sandbox Code Playgroud)

为什么这是有限的,但第一个例子不是?我可以理解需要首先设置子类,也许不允许在调用超级构造函数之前实例化对象变量.但是t显然是一个方法(局部)变量,为什么不允许呢?

有没有办法解决这个限制?有没有一种安全的方法可以将变量保存到您可能构造的内容之前调用super但是在您输入构造函数之后?或者,更一般地说,允许在实际调用super之前进行计算,但是在构造函数中?

谢谢.

java

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

Java中std :: vector的等价物?

在Java中,与std :: vector最接近的是什么?我的意思是,这个类可以将T引入其构造函数,然后是pushBack,popBack()并且存储在连续内存(不是链表)中.

谢谢

java

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

属性文件中属性的命名约定

Java中属性文件中定义的属性名称的命名约定是什么?我可以使用大写还是只使用小写?

例如:bankAccountNumber或bank.account.number?

它是在互联网上的某个地方定义的吗?

java naming-conventions

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

对象内部的XMLHttpRequest:如何保持对"this"的引用

我从一个javascript对象里面做了一些Ajax调用:

myObject.prototye = {
  ajax: function() {
    this.foo = 1;

    var req = new XMLHttpRequest();
    req.open('GET', url, true);
    req.onreadystatechange = function (aEvt) {  
      if (req.readyState == 4) {  
        if(req.status == 200)  {
          alert(this.foo); // reference to this is lost
        }
      }
  }
};
Run Code Online (Sandbox Code Playgroud)

在onreadystatechange函数内部,这不再引用主对象,因此我无法访问this.foo.我可以在XMLHttpRequest事件中保留对主对象的引用吗?

javascript ajax

8
推荐指数
2
解决办法
3041
查看次数

Emacs红宝石符号字完成

我经常定义一个ruby符号(例如.:some_value),然后我想创建一个具有相同名称的方法def some_value.

不幸的是,M + /第二次出现some_value字符串的autocompletion()不起作用,略有不同(:some_valuevs some_value).

如何设置emacs来处理此类事件?

ruby emacs symbols autocomplete

8
推荐指数
1
解决办法
1086
查看次数

Java:在覆盖方法时替换参数的子类/子类型?

所以我之前问过这个问题,但我在代码中遇到了一个错误,大多数人都接受了这个问题,而不是问题本身.

无论如何,我试图覆盖类中的接口方法.但是,我希望覆盖方法中的参数类型是overriden方法中定义的参数类型的子类.

界面是:

public interface Observer {
 public void update(ComponentUpdateEvent updateEvent) throws Exception;
}
Run Code Online (Sandbox Code Playgroud)

虽然覆盖此方法的类是:

public class ConsoleDrawer extends Drawer {

//...

 @Override
 public void update(ConsoleUpdateEvent updateEvent) throws Exception {
  if (this.componentType != updateEvent.getComponentType()) {
   throw new Exception("ComponentType Mismatch.");
  }
  else {
   messages = updateEvent.getComponentState(); 
  }
 }

//...

}
Run Code Online (Sandbox Code Playgroud)

ConsoleUpdateEvent是ComponentUpdateEvent的子类.

现在,我可以让ConsoleDrawer中的update()方法将ComponentUpdateEvent作为参数,然后将其转换为ConsoleUpdateEvent,但如果可能的话,我正在寻找一个更优雅的解决方案.任何帮助,将不胜感激.谢谢.

java generics parameters overriding subclass

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

在java中避免使用instanceof运算符时观察多个observable?

如果我有一个对象,我希望能够观察其他几个可观察对象,而不是所有相同的类型.例如,我希望A能够观察B和C.B和C完全不相关,除了它们都实现了Observable.

显而易见的解决方案是在更新方法中使用"if instanceof",但很快就会变得混乱,因此我想知道是否还有其他方法?

java observer-pattern

7
推荐指数
2
解决办法
9329
查看次数

广播当日期改变时的意图?

我想知道是否有一个android意图来检查系统日期的变化.我想要一个当时间从23:59变为00:00(下一个日期)时广播的意图.我搜索网络和发现有关android.intent.action.DATE_CHANGED但似乎只有在手动更改日期时才会广播此意图.

如果没有这样的意图让我知道是否存在替代方案.我能想到的另一种选择是使用AlarmManger并广播待定意图.有什么比这简单吗?

android

7
推荐指数
1
解决办法
4586
查看次数

在ksh中比较字符串是否相等

我正在测试下面的shell脚本:

#!/bin/ksh -x


instance=`echo $1 | cut -d= -f2`
if [ $instance == "ALL" ]
then
echo "strings matched \n"
fi
Run Code Online (Sandbox Code Playgroud)

它在if条件中给出了这个错误:

: ==: unknown test operator
Run Code Online (Sandbox Code Playgroud)

==不是使用正确的语法?我在命令行上运行如下

test_lsn_2 INSTANCE=ALL
Run Code Online (Sandbox Code Playgroud)

有人可以建议一个解决方案.谢谢.

unix bash shell ksh

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