2017-01-16 9 views
0

私はXamarin.Forms(AndroidとiOS)を使っていました。 HAXMが実行されています。その後、PCLプロジェクトとAndroidとiOSの両方のプロジェクトにNugetのCocosSharpをインストールしました。 iOSプロジェクトは素晴らしいですがAndroidは...そうではありません。Xamarin.Formsの 'Resource.String'に 'ApplicationName'と 'Hello'という文字列がありません

は私が持っている:

'Resource.String' does not contain a definition for `ApplicationName' 
'Resource.String' does not contain a definition for `Hello' 

私は解決策を探しましたが、私は見つかったすべては、私は解決策をきれいにしなければならないということです。やった。それはうまくいかなかった。私はVisual Studioを閉じ、パッケージフォルダを削除し、すべてのbin/objプロジェクトを削除しました。 VSを開いて、もう一度きれいにしたソリューションを再構築しました。同じエラーです。

どうすればこの問題を解決できますか?手動でString.xmlをプロジェクトに追加する必要がありますか?本当に?!私はこの問題を解決するにはどうすればよいの助け

答えて

2

ため

のおかげ?手動でString.xmlをプロジェクトに追加する必要がありますか?本当に?!

デモを作成して問題を再現しました。

global::CocosSharp.Forms.Android.Resource.String.ApplicationName = global::CocosSharpDemo.Droid.Resource.String.ApplicationName; 
global::CocosSharp.Forms.Android.Resource.String.Hello = global::CocosSharpDemo.Droid.Resource.String.Hello; 

/コメントアウトコードの次の2行を削除することで、アプリケーションのビルドと正しく動作:Resource.Designer.csファイルを開くことによって、私は以下のコードが自動的にUpdateIdValues()に追加されていることがわかりました。

あるいは、もちろんvaluesフォルダに以下のコードを持つstrings.xmlファイルを追加することも、問題を解決:

<resources> 
    <string name="ApplicationName">your project name</string> 
    <string name="Hello">hello</string> 
</resources> 

私は、プロジェクトのGithubの上issueを開きました。

+0

ありがとうございますが、 'Resource.Designer.cs'が自動的に生成されます。それで問題は解決しません。 2つ目の解決策で私は自分自身に出てきましたが、うまくいきますが、それが正しい解決策ではないと思います。つまり、問題は3歳です(オンラインのいくつかの記事によると) - 過去3年間、人々が手動でstrings.xmlを作成し、Xamarinはそれを無視するということを教えていますか? –

+0

もう少しテストをしました。プロジェクトを再構築すると、2行のコードが再生成されます。だから、現在の最適な回避策は 'strings.xml'ファイルをvaluesフォルダに追加することです。私はこのフレームワークライブラリの著者ではありません。なぜ私はこれらの2行のコードが自動的に追加されるのかわかりません。それで、私はプロジェクトのgithubに[問題](https://github.com/mono/CocosSharp/issues/408)を開いたのです。応答を待ってみましょう。 –

+0

ありがとう、見てみましょう。しかし、それは奇妙なことです..問題は、ほぼ3年前にそこにあった。同じような問題がすでに開かれている必要があります。おもう... –

関連する問題