2012-02-05 15 views
3

私はMyPrimaryClassという名前のクラスを持っています。このクラスはボタンを押すと、ボタンmyClassForResultでインテントを作成します。リソース文字列のToast.makeText

私はそれを開始するためにこれを使用します。どちらのMyPrimaryClass

startActivityForResult(myIntentOfMyClassForResult, ACTIVITY_EDIT_BTEXT); 

、およびmyClassForResultアクティビティを拡張します。

したがって、私がToString.makeTextをmyClassForResult内で、テキストパラメータR.string.my_resource_stringで呼び出すと、Force Close!が表示されます。

私が試みた本:

Context c = myClassForResult.this; 
Toast toast = Toast.makeText(c, 
    c.getResources().getString(R.string.my_resource_string), 
    Toast.LENGTH_SHORT); 
toast.show(); 

また、この:C = getApplicationContext()

また、この:C = getBaseContext()また

これ:

Context c = MyPrimaryClass.this; 
Toast toast = Toast.makeText(c, 
    R.string.my_resource_string, 
    Toast.LENGTH_SHORT); 
toast.show(); 

"My toast Text!"のようなインライン文字列を使用すると動作します。しかし、私はリソースから文字列を取得する必要があります。

は-Problem解決:

私はToast.LENGTH_LONG

値は、文字列R.string.my_resource_stringにトーストの期間を変更し、問題を解決するために、「タイトルが空です」

私はその値を "The title"に変更すると正常に動作したので、Toast.LENGTH_SHORTの長さには文字列が長すぎると思います。

しかし、再生時間をToast.LENGTH_LONGに変更すると、長い文字列を使用できます。

Context c = MyPrimaryClass.this; 
Toast toast = Toast.makeText(c, 
    R.string.my_resource_string, 
    Toast.LENGTH_LONG); 
toast.show(); 
+1

強制終了時にlogcatエラーを送信します。 – JoxTraex

+0

これはlogcatエラーです: android.content.res.Resources $ NotFoundException:文字列リソースID#0x7f04000a – DMF

+0

なぜあなたはそのような2つのクラスを使用しているの重要性を説明できますか? – JoxTraex

答えて

関連する問題