25

作成中にエラーが発生しますToast

Toast toast = Toast.makeText(this, text, duration);

makeText()のメソッドを解決できませんToast

このエラーが発生しています

java: no suitable method found for makeText(idtech.ESDN.ShapeData,java.lang.CharSequence,int)
    method android.widget.Toast.makeText(android.content.Context,int,int) is not applicable
      (actual argument idtech.ESDN.ShapeData cannot be converted to android.content.Context by method invocation conversion)
    method android.widget.Toast.makeText(android.content.Context,java.lang.CharSequence,int) is not applicable
      (actual argument idtech.ESDN.ShapeData cannot be converted to android.content.Context by method invocation conversion)
4

19 に答える 19

32

makeText の署名は次のとおりです。

public static Toast makeText (Context context, CharSequence text, int duration)

最初のパラメータはコンテキスト オブジェクトでなければなりません。を入れますがthis、このオブジェクトを参照し、 (たとえば a )this とは異なるものにすることができます。ActivityFragment

于 2013-07-18T07:13:18.313 に答える
27

あなたの場合、これは活動の目的ではないかもしれません。Click Listener オブジェクト内で Toast.makeText メソッドを使用している可能性があります。これを解決するには、 getApplicationContext() を使用する必要があります:

Toast.makeText(getApplicationContext() , "あなたのメッセージ", Toast.LENGTH_LONG);

于 2015-07-11T11:21:02.150 に答える
5

次のように入力してください。 Toast toast = Toast.makeText(this, text, duration);

いいえ: Toast toast = new Toast.makeText(this, text, duration);

于 2013-11-19T13:54:10.487 に答える
3

試すToast toast = Toast.makeText(getActivity(), text, duration);

.show()表示したい場合は、追加することもできます

于 2013-07-18T07:25:57.693 に答える
2
Toast.makeText(YourActivity.this, text, duration).show();
于 2013-07-18T07:14:32.430 に答える
1

ToastMainActivity でテキストを作成しようとしている場合は、次のようにします。

Toast.makeText(getApplicationContext(), "Your text", Toast.LENGTH_LONG).show();
于 2017-01-26T12:24:26.903 に答える
0

私は同様の問題に直面しましたが、私の場合、AndroidスタジオのXamarin c#とJavaには、いくつかの関数(同じ関数)を呼び出すときに違いがあることがわかりました。

Xamarin と c# を使用する場合、以下に示すように、makeText は MakeText になり、show は Show になります。

Toast toast = Toast.MakeText(this, "Text", ToastLength.Long);
toast.Show();

お役に立てれば:)

于 2016-10-18T07:21:53.480 に答える
0

Blackbelt が言ったように、Toast の構文は次のとおりです。

Toast.makeText(Activity.this, "Message",Toast.<specify Lenght>).show();

Activity.this現在のアクティビティ、Messageは表示する文字列、 は表示Toast.lengthする長さです。

于 2020-05-24T14:45:53.127 に答える