私はどのように私の機能を呼び出すのですか?明らかにコール静的void
public static void dial(Activity call)
{
Intent intent = new Intent(Intent.ACTION_DIAL);
call.startActivity(intent);
}
ない:
dial(); /*Something should be within the brackets*/
私はどのように私の機能を呼び出すのですか?明らかにコール静的void
public static void dial(Activity call)
{
Intent intent = new Intent(Intent.ACTION_DIAL);
call.startActivity(intent);
}
ない:
dial(); /*Something should be within the brackets*/
nullを渡すことはできません。コンテキストオブジェクトを送信する必要があります。
あなたの機能はどこにありますか?アクティビティなどの内部にある場合は、パラメータとして「this」を渡します。
BroadcastListenerまたはサービス内にある場合は、パラメータをContextに変更して「this」を渡すだけです。
あなたは、その理由は、静的メソッドではなく、それの個々のインスタンスに、クラス自身が属していることである
ClassName.dial();
を試してみてください。 instance.dial()
への呼び出しは合法ですが、お勧めしません。
あなたは何exacltyクラスの静的メソッドを呼び出す
....あなたClassName.StaticMethodを使用する必要がありますが問題ありますか?
あなたが持っていれば完全に(あなたは常にClassname.FctNameで静的関数を呼び出す必要がある場合でも、
public class Test {
public void nonStaticFct() {
staticFct();
}
public static void staticFct() {
//do something
}
}
作品のようなクラス(Test.staticFct()
)
私はここでの問題が欠落している引数であると思います
[編集]明らかに私は間違っています。Java Code Conventionsによれば、暗黙のthis.staticFct()が期待されるので、classnameを使わずにClassmethodを呼び出すことで、 - でもJavaコンパイラは十分にスマートです)
'this'を引数として渡してみてください(あなたがアクティビティから始めれば提供してください) –
dial(this);働くアナキンのように言った:ITS WORKING! – Patrick