2016-05-04 7 views
1

最近、私がiOSプロジェクトで作業するXamarinプロジェクトを継承しました。いくつかのチュートリアルを見て私は準備ができていると思ったが、私の前の人はストーリーボードやコントローラーを使わなかった!彼らはLoginScreens.csという名前のファイル(基本的には見た目から見たコントローラファイル)でビューのカスタマイズをすべて行いました。コントローラ内のビューをプログラムで変更する方法は、ストーリーボードに表示されます

私はこのプロジェクトでストーリーボードを取得したいと思います。そこで、Mainというストーリーボードを作成し、ViewControllerと必須のコピーを追加し、LoginScreen.csで使用されているビューのカスタマイズコードをコントローラに貼り付けました。

は、もう少し具体的に、私はこのようになります Main.Storyboardを持っている:私は実際に彼らに何のためのプレースホルダとして機能するのEditTextボックスとボタンを使用しています

enter image description here

ViewController.cs

これは、すべて登録しているようだと、私はiPhone 6SのiOS 9.3でデバッガを実行すると、私は次の取得が適切に構築します。

enter image description here

変化が示すように見えるが、すべて私のストーリーボードのiOSデザイナービューその場にとどまる私はストーリーボードにコントローラの変更を反映させる方法があるかどうかを確認しようとしています。

TL; DR:私はViewController.csファイルでプログラム的にいくつかのビューを変更しようとしています。これらのビューはもともとiOSデザイナーから追加されたもので、カスタマイズのためにコントローラで編集されました。コントローラーの視点での視覚的な変更を見たい、iOSデザイナーに反映する、デバッグするときに見たいと思う。

答えて

0

SwiftまたはObjective-CのUIクラスの宣言に追加できる設定はIBDesignableです。これは、Interface Builderで提示したいカスタムインターフェースを持っているUIオブジェクトをXcodeに伝えます。

私は、Xamarin/C#でIBDesignableをどのように使用するのかについてはわかりません。それがXamarinでサポートされていない場合、おそらくあなたは運が悪いでしょう。

ネット上の "Xamarin IBDesignable"で検索することをお勧めします。

2

プログラムからストーリーボードを実装するまでのすべてのビューが実行されていたプロジェクトから移動しようとしているような感じです。これはビッグの変更であり、ビューの変換には時間がかかります。

csファイルには、Add(passwordTextFeild)のようなものがあり、ストーリーボードビューに多くのビューが追加されます。そのため、ログインビューで多くのビューを取得するのはなぜですか。あなたは実行時にストーリーボードでこれらを見ることができません。

IBDesignableをお探しの場合、これはカスタムコントロールの方が多く、ストーリーボードの.csファイルからの変更を確認できるコードを追加する必要があります。3つの方法のいずれかで実行される傾向があるのiOSプロジェクトであなたが聞きたかった。おそらくhttps://developer.xamarin.com/guides/ios/user_interface/designer/ios_designable_controls_walkthrough/

ませんが、UI:

IBInspectable/IBDesignable in Xamarin

チェックのために、この公式のリンクを私の質問をチェック:

  • すべてのプログラムで
  • ストーリーボード
  • Xibs

それぞれの長所と短所を重み付け質問/ブログの記事のトン(さえvideo)があります。最終的に開発者がプロ​​グラムで行うのが最善だと感じた可能性があります。

+0

返信ありがとうございます。このプロジェクトはまだ初期段階です(iOSアプリケーションのシーンは1つだけです)。最初のページは主にコードベースで、次にここからストーリーボードを使用して見ることができます(これは可能でしょうか?)、またはゼロから書き直すことができますすべてのストーリーボードのアプローチでそれに行く –

関連する問題