2013-02-16 15 views
7

私はxamarinのウェブサイトで利用可能な "Hello, iPhone"チュートリアルに従っています。私は今すべてのステップを完了しました。今、私はアプリケーションを実行し、 "アクション1"ボタンをクリックします。このエラーが発生しましたボタンクリックでのNSInvalidArgumentExceptionエラー - xamarin

Objective-C例外がスローされました。名前:NSInvalidArgumentException理由: - [HelloWorld_iPhoneViewController actionButtonClick:]:インスタンスに送信された認識できないセレクタ0xb3a5a30 enter image description here この問題を解決するにはどうすればよいですか?私はあなたが2つのアクションを追加したことがわかりますあなたは(Xcodeで)ボタンの接続を見れば

static void Main (string[] args) 
    { 
     // if you want to use a different Application Delegate class from "AppDelegate" 
     // you can specify it here. 
     UIApplication.Main (args, null, "AppDelegate"); <-- HERE 
    } 

私のコードはhere

答えて

9

にアップロードMonoDevelopの+ MonoTouchでの最新バージョンを使用していますボタンにはactionButtonClickとactnButtonClickがあります。

コントローラでは、MonoTouchには、クラッシュしていない2番目のアクションの部分的なメソッドしか追加されていないようです。

actionbuttonClickという名前のアクションを削除しました(actnButtonClickを残して)、正常に実行されたサンプルを実行しました。

4

Jonathan Peppersの「Xamarinクロスプラットフォームアプリケーション開発」の本では、「Hello Phone」の例で同じ「非常に新しい」問題が発生しました。

これは私が修正したものです。私はXamarin Studioに切り替え

まず、 は(電話のレイアウトを表示する)MainStoryboard.storyboardファイルまたはタブをクリックし、 は下にその「プロパティ」を表示するには、レイアウト内「ボタン」をクリック右のウィンドウ。

それから私は、「ウィジェット」を示すボタンから「プロパティ」ウィンドウ(「レイアウト」、「イベント」内の「イベント」を選択した。

最後に、「アップインサイド」という項目の下にありました小さな "x"がそこにリストされたイベントハンドラを削除するために利用可能です - 私はbutton_TouchUpInside(またはそのようなもの)と呼ばれたと思います。このハンドラは余分な(書き込まれていない)ハンドラですので、その参照を削除することで、この例は正常に動作します。

+0

ありがとうございます。これは私のために働いた – WPFKK

0

toryboardファイルをソースコードエディタで開き、ボタンの下に表示したくない接続を削除します。

<button ...> 
    . 
    . 
    . 

    <connections> 
     <!-- remove any connections here that you don't want -->    
    </connections> 

</button> 
関連する問題