アプリ版:「スタンプのみでお礼する」機能のリリースについて

コンパイルエラーで、
「static コンテキストから参照することはできません」
と表示されます。
ソースにstaticという文字は有りません。
private voidなメソッドはstatic コンテキストですか?

[Foo.java]
import com.nttdocomo.ui.*;
public class Foo extends IApplication {
 public void start() {
  Display.setCurrent(new MyPanel());
 }
}
class MyPanel extends Panel {
 private void e() {
  Bar.DShow(Dialog.DIALOG_ERROR, "", "");
 }
}

[Bar.java]
import com.nttdocomo.ui.*;
public class Bar {
 public void DShow(int type, String title, String body) {
  Dialog d = new Dialog(type, title);
  d.setText(body);
  d.show();
 }
}

A 回答 (2件)

こんにちは。



>Display.setCurrent(new MyPanel());
setCurrentはstaticメソッドです。
ここで引っかかってるのではないでしょうか。
    • good
    • 0

Bar.DShowとしてますが、クラスから直接呼び出せるのならクラスメソッドでなければいけませんから、staticである必要があります。

staticにしたくないなら、new Bar().DShowでインスタンスから呼びださなければいけません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!