1

私は MonoTouch に足を踏み入れたばかりで、最も基本的な質問があります。彼らのチュートリアルでは、XCode の Interface Builder を介して直接 XIB にコントロールを追加する方法について説明しています。ただし、カスタム コントロールを XIB に追加する方法がわかりません。

基本の UICollectionView をサブクラス化して独自の目的に合わせてカスタマイズする例をいくつか見てきましたが、これを私のプロジェクトの C# コードで実行しました。私の質問は、UICollectionView の特定のサブクラスをプロジェクトで使用するために XIB に追加するにはどうすればよいですか?

4

1 に答える 1

1

通常の UIView の場合、実行する必要がある基本的な手順は次のとおりです。

  1. C# でカスタム ビューをクラスとして作成する

    public class MyView
    {
    }
    
  2. それに UIView 基本クラスを追加し、Register 属性を追加して、2 つのコンストラクターを追加します。

    [Register("MyView")]
    public class MyView : UIView
    {
        public MyView() {}
        public MyView(IntPtr handle) : base(handle) {}
    }
    
  3. 何か便利なことを行うには、Draw 実装を追加します。

    public override Draw(RectangleF rect)
    {
        var context = UIGraphics.CurrentGraphics();
        UIColor.Red.SetFill();
        context.FillEclipseInRect(rect);
    }
    
  4. プロジェクトを保存してビルドする

  5. カスタム ビューを使用する UIViewController の XIB エディターで、デザイン サーフェイスに UIView を追加します。

  6. その UIView を選択し、Identity Inspector で UIView の「カスタム クラス」を「MyView」に設定します。

  7. すべてを xCode に保存する

  8. MonoDevelop に戻り、ビルドして実行します

このフローのビデオは次の場所にあります: - http://www.youtube.com/watch?v=ggwO46dd-50&feature=youtube_gdata

カスタム UICollectionView、UILabel、UITableViewCell、またはその他の UIView 基本クラスの場合、特定のビューをサポートするために、異なる基本クラスと異なるコンストラクターを使用して、同様の手順に従います。

カスタム テーブル セルに関するビデオについては、http ://slodge.blogspot.co.uk/2013/01/uitableviewcell-using-xib-editor.html を参照してください。

于 2013-02-07T10:48:53.647 に答える